Commit Graph

29752 Commits

Author SHA1 Message Date
Sergio Durigan Junior d04550a6d7 2012-01-16 Sergio Durigan Junior <sergiodj@redhat.com>
* f-exp.y (parse_number): Convert prototype from K&R to ANSI C.
(growbuf_by_size): Likewise.
(yyerror): Likewise.
* m2-exp.y (make_qualname): Remove function (was #if 0'ed).
(modblock): Remove variable (was #if 0'ed).
(parse_number): Convert prototype from K&R to ANSI C.
(yyerror): Likewise.
* objc-exp.y (parse_number): Likewise.
(yyerror): Likewise.
(yylex): Remove #if 0'ed code.
* p-exp.y (uptok): Convert prototype from K&R to ANSI C.
(yyerror): Likewise.
2012-01-16 21:03:36 +00:00
Tom Tromey 4aac40c837 gdb
* NEWS: Add item.
	* symtab.h (compare_filenames_for_search): Declare.
	* symtab.c (compare_filenames_for_search): New function.
	(iterate_over_some_symtabs): Use it.
	* symfile.h (struct quick_symbol_functions)
	<map_symtabs_matching_filename>: Change spec.
	* psymtab.c (partial_map_symtabs_matching_filename): Use
	compare_filenames_for_search.  Update for new spec.
	* dwarf2read.c (dw2_map_symtabs_matching_filename): Use
	compare_filenames_for_search.  Update for new spec.
	* breakpoint.c (clear_command): Use compare_filenames_for_search.
gdb/doc
	* gdb.texinfo (Specify Location): Document relative file name
	handling.
gdb/testsuite
	* gdb.linespec/linespec.exp: Change some tests to use $decimal.
	Add tests for relative directory.
2012-01-16 20:40:53 +00:00
Tom Tromey cafec44190 gdb
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-16 19:44:16 +00:00
Sergio Durigan Junior 983af33b26 2012-01-16 Sergio Durigan Junior <sergiodj@redhat.com>
* breakpoint.c (create_sals_from_address_default): New function.
(create_breakpoints_sal_default): Likewise.
(decode_linespec_default): Likewise.
(is_marker_spec): Removed.
(strace_marker_p): New function.
(init_breakpoint_sal): Using `strace_marker_p' instead of
`is_marker_spec'.
(create_breakpoint): Call method `create_sals_from_address' from
breakpoint_ops, replacing code that created SALs conditionally
on the type of the breakpoint.  Call method `create_breakpoints_sal',
replacing code that created breakpoints conditionally on the type
wanted.
(base_breakpoint_create_sals_from_address): New function.
(base_breakpoint_create_breakpoints_sal): Likewise.
(base_breakpoint_decode_linespec): Likewise.
(base_breakpoint_ops): Add methods
`base_breakpoint_create_sals_from_address',
`base_breakpoint_create_breakpoints_sal' and
`base_breakpoint_decode_linespec'.
(bkpt_create_sals_from_address): New function.
(bkpt_create_breakpoints_sal): Likewise.
(bkpt_decode_linespec): Likewise.
(tracepoint_create_sals_from_address): Likewise.
(tracepoint_create_breakpoints_sal): Likewise.
(tracepoint_decode_linespec): Likewise.
(strace_marker_create_sals_from_address): Likewise.
(strace_marker_create_breakpoints_sal): Likewise.
(strace_marker_decode_linespec): Likewise.
(strace_marker_breakpoint_ops): New variable.
(addr_string_to_sals): Remove `marker_spec'.  Call method
`decode_linespec' from breakpoint_ops, replacing code that decoded
an address string into a SAL.  Use `strace_marker_p' instead of
`marker_spec'.
(strace_command): Decide whether we are dealing with a static
tracepoint with marker or not.  Use the appropriate breakpoint_ops.
(initialize_breakpoint_ops): Initialize new fields of breakpoint_ops.
* breakpoint.h (linespec_result, linespec_sals): New forward
declarations.
(breakpoint_ops) <create_sals_from_address>,
<create_breakpoints_sal>, <decode_linespec>: New methods.
2012-01-16 17:44:36 +00:00
Pedro Alves abcc497831 2012-01-16 Pedro Alves <palves@redhat.com>
* lib/gdb.exp (banned_procedures): New variable.
	(banned_variables_traced): Rename to ...
	(banned_traced): ... this.
	(gdb_init): Also trace banned procedures.
	(gdb_finish): Also untrace banned procedures.
2012-01-16 17:31:25 +00:00
Pedro Alves 97ccebe869 2012-01-16 Pedro Alves <palves@redhat.com>
Remove all calls to strace.
2012-01-16 16:21:53 +00:00
gdbadmin bfcfb5c9a1 *** empty log message *** 2012-01-16 00:00:04 +00:00
gdbadmin 4442237884 *** empty log message *** 2012-01-15 00:00:03 +00:00
Doug Evans 4795f3986a * NEWS: Update text for "maint set python print-stack".
It is deprecated in gdb 7.4 and deleted in 7.5.
2012-01-14 18:13:27 +00:00
Jan Kratochvil 2af7517b11 gdb/testsuite/
* gdb.dwarf2/dw2-namespaceless-anonymous.S: New file.
	* gdb.dwarf2/dw2-namespaceless-anonymous.exp: New file.
2012-01-14 10:46:35 +00:00
gdbadmin 5376855288 *** empty log message *** 2012-01-14 00:00:33 +00:00
Pedro Alves 7d5d4e982d 2012-01-13 Pedro Alves <palves@redhat.com>
* server.c (attach_inferior): Clear `cont_thread'.
2012-01-13 20:06:40 +00:00
Pedro Alves f128d5e9da 2012-01-13 Pedro Alves <palves@redhat.com>
* server.c (main): Avoid infinite loop while detaching/killing
	after a longjmp.
2012-01-13 20:02:36 +00:00
Paul Pluzhnikov 9241a8bcf3 2012-01-13 Paul Pluzhnikov <ppluzhnikov@google.com>
* gdb.base/attach-pie-misread.exp: Pass -pie only to the linker.
	* gdb.base/pie-execl.exp: Likewise.
2012-01-13 18:39:31 +00:00
Jan Kratochvil 0ee339bc47 gdb/doc/
* gdbint.texinfo (Coding Standards): Require braces for two lines of
	code.
2012-01-13 14:31:55 +00:00
Eli Zaretskii ee5106fede Avoid compiler warnings in gdb_curses.h on MinGW.
See http://sourceware.org/ml/gdb-patches/2012-01/msg00298.html
for more details about the problem.

 gdb/gdb_curses.h (MOUSE_MOVED) [__MINGW32__]: Undefine before
 including curses.h.
2012-01-13 10:44:35 +00:00
gdbadmin 763bf0cf3b *** empty log message *** 2012-01-13 00:00:32 +00:00
Jan Kratochvil b161e06ff6 gdb/
* configure: Regenerate.
	* config.in: Regenerate.
2012-01-12 23:38:47 +00:00
Keith Seitz 85254831c0 PR mi/10586
* varobj.c (ANONYMOUS_STRUCT_NAME): Define.
	(ANONYMOUS_UNION_NAME): Define.
	(is_path_expr_parent): New function.
	(get_path_expr_parent): New function.
	(is_anonymous_child): New function.
	(create_child_with_value): If the child is anonymous and without
	a name, assign an object name to it.
	(c_describe_child): Use get_path_expr_parent to determine
	the parent expression.
	If there field represents an anonymous struct or union and
	has no name, set an appropriate display name and expression.
	(cplus_describe_child): Likewise.
2012-01-12 22:51:10 +00:00
Keith Seitz 3848a17fe5 PR mi/10586
* gdb.mi/var-cmd.c (struct anonymous): New structure.
	(do_anonymous_type_tests): New function.
	(main): Call do_anonymous_type_tests.
	* gdb.mi/mi2-var-child.exp: Add anonymous type tests.
	(verify_everything): New procedure.
	* gdb.mi/mi-var-cp.cc (class A): New class.
	(anonymous_structs_and_unions): New function.
	(main): Call anonymous_structs_and_unions.
	* gdb.mi/mi-var-cp.exp: Add anonymous type tests.
	(verify_everything): New procedure.
2012-01-12 22:50:49 +00:00
Keith Seitz 440e2fca6a * lib/mi-support.exp: Expand comments about PATH_EXPR.
(varobj_tree::get_path_expr): Assume that all varobjs are
	compound unless they are known simple types.
	Adjust path expressions based on parent type, path parent type,
	and tree language.
	(varobj_tree::walk_tree): Add LANGUAGE parameter and save it into
	the root varobj.
	(mi_walk_varobj_tree): Add LANGUAGE parameter.
2012-01-12 22:28:34 +00:00
Pedro Alves 620fa63a22 2012-01-12 Pedro Alves <palves@redhat.com>
* i386-tdep.c (i386_frame_cache_1): Also mark the frame base as
	available when %ebp is found to be zero (outermost).
2012-01-12 15:39:36 +00:00
gdbadmin bc71dbbe56 *** empty log message *** 2012-01-12 00:00:32 +00:00
Paul Pluzhnikov f888f159f4 Trivial cleanup: kill trailing whitespace 2012-01-12 00:00:01 +00:00
Andreas Tobler 2efa2c79ea 2012-01-11 Andreas Tobler <andreast@fgznet.ch>
* common/gdb_assert.h (gdb_static_assert): Rename static_assert to
	an internal gdb_static_assert.
	* mi/mi-common.c: Rename static_assert to gdb_static_assert.
2012-01-11 21:51:31 +00:00
Tom Tromey 88e7d25d8d PR gdb/9598:
* breakpoint.c (_initialize_breakpoint): Fix help for "catch
	catch" and "catch throw".
2012-01-11 18:30:19 +00:00
Pedro Alves 675399c96d 2012-01-11 Pedro Alves <palves@redhat.com>
* gdb.base/default.exp (core-file): Don't expect "GDB can't read
	core files on this machine" anymore.
2012-01-11 10:59:51 +00:00
Paul N. Hilfinger 97ddaa9bd5 Add test for use of "<block>::<variable>" syntax for locals in watch.
First, fix a technical problem with the function recurser.  The test sets a
watch on local_x at a point where its value is technically undefined.  The
test is written assuming that the value is not initially 2, but nothing in the
C standard guarantees that.

Second, augment the existing test for variables in recursive calls to check an
equivalent expression that explicitly sets the scope of the local variable
being tracked.

2012-01-11  Paul Hilfinger  <hilfingr@adacore.com>

	* gdb.base/watchpoint.c (recurser): Initialize local_x.
	(main): Repeat recurser call.
	* gdb.base/watchpoint.exp: Check that 'watch recurser::local_x' is
	equivalent to 'local_x'.
2012-01-11 10:36:18 +00:00
Paul N. Hilfinger ea73357595 Add testcase for locals identified with FUNCTION::VAR syntax.
This test stops inside a recursive function after a few levels of recursion,
goes up some frames, and then accesses a local variable with 'print foo::val'
rather than the usual 'print val' to see if the former pays attention to the
selected frame.

2012-01-11  Paul Hilfinger  <hilfingr@adacore.com>
    	    Joel Brobecker <brobecker@adacore.com>

	* gdb.base/recpar.c, gdb.base/recpar.exp: New files.
2012-01-11 10:35:12 +00:00
Paul N. Hilfinger 72384ba31a Have block_innermost_frame start from selected frame and document.
GDB used to search for the frame containing variables in a particular
lexical block starting from the current (top) frame, ignoring any
currently selected frame.  It is not clear why this is desirable for
variables that require a frame; why would a user deliberately select
one frame and then expect to see the value of a variable in a more
recent frame?  This change causes block_innermost_frame to start
looking from the selected frame, if there is one.  It may be
unnecessarily conservative: we use get_selected_frame_if_set rather
than get_selected_frame in order to avoid the side effect of calling
select_frame, which would probably be harmless.

Expression-parsing routines previously made the unwarranted assumption
that all block-qualified variables (written with the GDB extension
<block>::<variable>) are static.  As a result, they failed to update
innermost_block, which confused the watch commands about when
variables in watched expressions went out of scope, and also caused
the wrong variables to be watched.  This patch also modifies these
routines to treat all local variables the same whether or not they are
block-qualified.

Finally, we add a paragraph to the "Program Variables" section of the texinfo
documentation concerning the use of "::" for accessing non-static variables.

2012-01-11  Paul Hilfinger  <hilfingr@adacore.com>

	* gdb/blockframe.c (block_innermost_frame): Start search from selected
	frame, if present, or otherwise the current frame.

	* gdb/c-exp.y (variable): Update innermost_block for
	'block COLONCOLON NAME' clause.
	* gdb/m2-exp.y (variable): Ditto.
	* gdb/objc-exp.y (variable): Ditto.

	* gdb/doc/gdb.texinfo (Variables): Document use of :: for non-static
	variables.
2012-01-11 10:34:21 +00:00
gdbadmin 313a658140 *** empty log message *** 2012-01-11 00:00:03 +00:00
Tom Tromey 065a711fc5 PR python/13199:
* python/python.c (finish_python_initialization): Set sys.argv.
2012-01-10 21:26:39 +00:00
Doug Evans f3f5162ecf * dwarf2read.c (dwarf_decode_lines): Remove arg "abfd". New arg
"want_line_info".  All callers updated.
	(dwarf_decode_lines_1): New function.
	(handle_DW_AT_stmt_list): Add function comment.
	New arg "want_line_info".  All callers updated.
	(read_file_scope,read_type_unit_scope): Move comment from
	handle_DW_AT_stmt_list to here.
2012-01-10 21:16:59 +00:00
Jan Kratochvil 9934703b91 gdb/
Fix regression after libiberty/ update for GCC PR 6057 and others.
	* c-exp.y (operator) <OPERATOR DELETE>
	(operator) <OPERATOR DELETE '[' ']'>: Add trailing space.
	* cp-name-parser.y (fill_comp, make_operator, make_dtor)
	(make_builtin_type, make_name): New variable i, add gdb_assert.
	(operator) <OPERATOR NEW>: Update ARGS to 3.
	(operator) <OPERATOR DELETE>: Add trailing space.
	(operator) <OPERATOR NEW '[' ']'>: Update ARGS to 3.
	(operator) <OPERATOR DELETE '[' ']'>: Add trailing space.
	* cp-support.c (cp_canonicalize_string): Check NULL from
	cp_comp_to_string, call warning and return.
2012-01-10 19:29:12 +00:00
Jan Kratochvil 06b9f45fe4 gdb/
Fix duplicate .o files after omitting libbfd.a.
	* Makefile.in (ALL_TARGET_OBS): Remove corelow.o.
	(SFILES): Add corelow.c.
	(COMMON_OBS): Add corelow.o.
	(ALLDEPFILES): Remove corelow.c.
	* config/alpha/alpha-linux.mh (NATDEPFILES): Remove corelow.o.
	* config/alpha/alpha-osf3.mh: Likewise.
	* config/alpha/fbsd.mh: Likewise.
	* config/arm/nbsdaout.mh: Likewise.
	* config/arm/nbsdelf.mh: Likewise.
	* config/i386/i386gnu.mh: Likewise.
	* config/ia64/hpux.mh: Likewise.
	* config/ia64/linux.mh: Likewise.
	* config/m32r/linux.mh: Likewise.
	* config/m68k/linux.mh: Likewise.
	* config/mips/irix5.mh: Likewise.
	* config/mips/irix6.mh: Likewise.
	* config/pa/hpux.mh: Likewise.
	* config/pa/linux.mh: Likewise.
	* config/powerpc/aix.mh: Likewise.
	* config/sparc/linux.mh: Likewise.
	* config/sparc/linux64.mh: Likewise.
	* config/sparc/sol2.mh: Likewise.
	* config/vax/vax.mh: Likewise.
	* configure.tgt (alpha*-*-freebsd* alpha*-*-kfreebsd*-gnu)
	(alpha*-*-netbsd*, alpha*-*-knetbsd*-gnu, alpha*-*-openbsd*)
	(am33_2.0*-*-linux*, arm*-wince-pe, arm*-*-mingw32ce*, arm*-*-linux*)
	(arm*-*-openbsd*, cris*, frv-*-*, hppa*-*-hpux*, hppa*-*-netbsd*)
	(hppa*-*-openbsd*, i[34567]86-*-dicos*, i[34567]86-*-freebsd*)
	(i[34567]86-*-kfreebsd*-gnu, i[34567]86-*-netbsd*)
	(i[34567]86-*-knetbsd*-gnu, i[34567]86-*-openbsd*, i[34567]86-*-nto*)
	(i[34567]86-*-solaris2.1[0-9]*, x86_64-*-solaris2.1[0-9]*)
	(i[34567]86-*-solaris*, i[34567]86-*-linux*, i[34567]86-*-cygwin*)
	(i[34567]86-*-mingw32*, m68*-*-netbsd*, m68*-*-knetbsd*-gnu)
	(m68*-*-openbsd*, m88*-*-openbsd*, microblaze*-linux-*)
	(microblaze*-*-linux*, mips*-*-linux*, mips*-*-netbsd*)
	(mips*-*-knetbsd*-gnu, mips64*-*-openbsd*, powerpc-*-netbsd*)
	(powerpc-*-knetbsd*-gnu, powerpc-*-openbsd*, powerpc-*-linux*)
	(powerpc64-*-linux*, s390*-*-*, score-*-*, sh*-*-linux*)
	(sh*-*-netbsdelf*, sh*-*-knetbsd*-gnu, sh*-*-openbsd*)
	(sparc*-*-freebsd*, sparc*-*-kfreebsd*-gnu, sparc-*-netbsd*)
	(sparc-*-knetbsd*-gnu, sparc64-*-netbsd*, sparc64-*-knetbsd*-gnu)
	(sparc-*-openbsd*, sparc64-*-openbsd*, tic6x-*-*linux, vax-*-netbsd*)
	(vax-*-knetbsd*-gnu, vax-*-openbsd*, x86_64-*-dicos*, x86_64-*-linux*)
	(x86_64-*-freebsd*, x86_64-*-kfreebsd*-gnu, x86_64-*-netbsd*)
	(x86_64-*-knetbsd*-gnu, x86_64-*-openbsd*, xtensa*-*-linux*): Remove
	corelow.o from gdb_target_obs.
	* corefile.c (core_target): Update the comment on NULL value.
	(core_file_command): Replace error by gdb_assert on CORE_TARGET.
	* corelow.c (sniff_core_bfd): Call error instead of warning on zero
	MATCHES.  Drop YUMMY set on NULL.
	(core_close): Do not call exit_inferior_silent on zero PID.  Do not
	reclaim CORE_DATA if it is already NULL.
2012-01-10 16:30:49 +00:00
gdbadmin 4299088ecd *** empty log message *** 2012-01-10 00:00:32 +00:00
Doug Evans 3436505436 * gdbtypes.c (safe_parse_type): Initialize type to keep gcc happy.
* varobj.c (varobj_set_value): Initialize val,value to keep gcc happy.
2012-01-09 22:31:39 +00:00
Keith Seitz 696166a376 * breakpoint.c (wrapper.h): Don't include. 2012-01-09 20:47:47 +00:00
Keith Seitz 8e7b59a53f * Makefile.in (SFILES): Remove wrapper.c.
(HFILES_NO_SRCDIR): Remove wrapper.h.
	(COMMON_OBS): Remove wrapper.o.
	* cli/cli-interp.c: Don't inlude wrapper.h.
	* corelow.c: Likewise.
	(core_open): Replace gdb_target_find_new_threads with
	TRY_CATCH around target_find_new_threads.
	* eval.c (fetch_subexp_value): Likewise for value_fetch_lazy.
	* gdbtypes.c (safe_parse_type): Likewise for parse_and_eval_type.
	* varobj.c (varobj_create): Likewise for parse_exp_1 and
	evaluate_expression.
	(varobj_set_value): Likewise for evaluate_expression and
	value_assign.
	(install_new_variable): Likewise for value_fetch_lazy.
	(adjust_value_for_child_access): Likewise for value_ind.
	(c_describe_child): Likewise for value_subscript and
	value_ind.
	(c_value_of_root): Likewise for evaluate_expression.
	* wrapper.c: Remove.
	* wrapper.h: Remove.
2012-01-09 20:27:49 +00:00
Doug Evans 9ff913ba1b * dwarf2read.c (read_and_check_comp_unit_head): Renamed from
partial_read_comp_unit_head.  Replace "buffer", "buffer_size" and
	"abfd" args with "section".  All callers updated.
	Error checking code moved ...
	(error_check_comp_unit_head): ... here.  New function.
	(read_and_check_type_unit_head): Renamed from read_type_unit_head.
	Delete arg "abfd".  New arg "type_offset".  All callers updated.
	(create_debug_types_hash_table): Simplify by using
	read_and_check_type_unit_head.
2012-01-09 17:40:05 +00:00
Doug Evans 1a4eeb9811 * parser-defs.h (namecopy): Delete.
* parse.c (namecopy, namecopy_size): Move into copy_name.
2012-01-09 17:27:20 +00:00
Doug Evans 06db92f054 * server.c (start_inferior): Set last_ptid in --wrapper case. 2012-01-09 17:17:50 +00:00
Jan Kratochvil 2e6af8c045 gdb/
Partially fix duplicate .o files after omitting libbfd.a.
	* config/alpha/alpha-osf3.mh (NATDEPFILES): Remove solib.o.
	* config/i386/nbsdaout.mh (NATDEPFILES): Remove solib.o.
	* config/i386/obsdaout.mh (NATDEPFILES): Remove solib.o.
	* config/m68k/nbsdaout.mh (NATDEPFILES): Remove solib.o.
	* config/m68k/obsd.mh (NATDEPFILES): Remove solib.o.
	* config/powerpc/aix.mh (NATDEPFILES): Remove xcoffread.o.
	* config/vax/nbsdaout.mh (NATDEPFILES): Remove solib.o.
2012-01-09 15:21:13 +00:00
Pedro Alves 9f2f828a17 2012-01-09 Pedro Alves <palves@redhat.com>
* MAINTAINERS: Update my email address.
2012-01-09 10:07:30 +00:00
gdbadmin e71bd25763 *** empty log message *** 2012-01-09 00:00:03 +00:00
Doug Evans d467dd7300 * dwarf2read.c (dwarf2_per_objfile): Rename n_type_comp_units to
n_type_units.  Rename type_comp_units to all_type_units.
	All uses updated.
	(add_signatured_type_cu_to_table): Renamed from
	add_signatured_type_cu_to_list.  All callers updated.
2012-01-08 22:20:17 +00:00
Doug Evans 4d72c0bc3e * gdbtypes.h (struct cplus_struct_type): Delete member
nfn_fields_total.  All uses removed.
2012-01-08 21:02:45 +00:00
gdbadmin 49c57d84cd *** empty log message *** 2012-01-08 00:00:02 +00:00
gdbadmin 48b5efd2c0 *** empty log message *** 2012-01-07 00:00:03 +00:00
Doug Evans 21b2bd31ce * dwarf2read.c: Move FIXME from dwarf2_build_psymtabs_hard
to top of file.
	(dwarf2_find_comp_unit): Delete.
	(process_psymtab_comp_unit): Make result "void".
	Delete args buffer, info_ptr, buffer_size, and replace with
	"section".  All callers updated.
	(dwarf2_build_psymtabs_hard): Simplify.
2012-01-06 18:13:22 +00:00
Yao Qi 32d929991d * tracepoint.c [IN_PROCESS_AGENT] (debug_threads): Macro
defined.
	[IN_PROCESS_AGENT] (debug_agent): New global variable.
2012-01-06 05:58:29 +00:00
Sergio Durigan Junior bfd189b164 2012-01-06 Sergio Durigan Junior <sergiodj@redhat.com>
Thiago Jung Bauermann  <bauerman@br.ibm.com>

	* ada-lang.c (ada_exception_name_addr): Add `volatile' keyword
	before `struct gdb_exception'.
	* breakpoint.c (update_global_location_list_nothrow)
	(update_breakpoint_locations, enable_breakpoint_disp): Likewise.
	* cp-abi.c (value_rtti_type): Likewise.
	* cp-support.c (cp_validate_operator): Likewise.
	* infrun.c (insert_exception_resume_breakpoint)
	(check_exception_resume, keep_going): Likewise.
	* mi-interp.c (mi_breakpoint_created)
	(mi_breakpoint_modified): Likewise.
	* rs6000-aix-tdep.c (rs6000_convert_from_func_ptr_addr): Likewise.
	* solib-ia64-hpux.c (ia64_hpux_at_dld_breakpoint_p)
	(ia64_hpux_handle_dld_breakpoint_1): Likewise.
2012-01-06 03:34:46 +00:00
gdbadmin 0cf59e7741 *** empty log message *** 2012-01-06 00:00:03 +00:00
Doug Evans 0b30b85c7e * dwarf2read.c (statement_prologue): Delete, unused. 2012-01-05 21:56:37 +00:00
Doug Evans 98714339e5 * dwarf2read.c (dwarf2_per_cu_addr_size): Make result type an int.
* dwarf2loc.h (dwarf2_per_cu_addr_size): Update.
2012-01-05 21:53:14 +00:00
Doug Evans 6b07635ff9 * dwarf2read.c (comp_unit_header): Delete, unused. 2012-01-05 20:17:50 +00:00
Ulrich Weigand 761f4555cc * configure.tgt [s390*-*-*] (gdb_target_obs): Add corelow.o.
* config/s390/s390.mh (NATDEPFILES): Remove corelow.o.
2012-01-05 17:07:05 +00:00
Pedro Alves 2ca0b532fd 2012-01-05 Khoo Yit Phang <khooyp@cs.umd.edu>
* infrun.c (normal_stop): Don't skip calling the normal_stop
	observers if the thread was doing a multi-step, but stopped for
	some reason other than stepping.

gdb/testsuite/
2012-01-05  Pedro Alves  <alves.ped@gmail.com>

	* gdb.mi/mi-stepn.c, gdb.mi/mi-stepn.exp: New files.
	* gdb.python/py-events.c (first): Add bits for new "step N" test.
	* gdb.python/py-events.exp: Test that "step N" tripping on a
	breakpoint emits a breakpoint event.
2012-01-05 13:11:31 +00:00
Pedro Alves 50aeff07f4 2012-01-05 Pedro Alves <alves.ped@gmail.com>
* cli/cli-decode.h: Add comments.
	(CMD_LIST_AMBIGUOUS): Moved to command.h
	(add_cmd, add_alias_cmd, add_prefix_cmd, add_abbrev_prefix_cmd)
	(set_cmd_cfunc, set_cmd_sfunc, set_cmd_completer, cmd_cfunc_eq)
	(set_cmd_context, get_cmd_context, lookup_cmd, lookup_cmd_1)
	(deprecate_cmd, deprecated_cmd_warning, lookup_cmd_composition)
	(add_com, add_com_alias, add_info, add_info_alias)
	(complete_on_cmdlist, complete_on_enum, help_list): Remove
	declarations.
	* command.h: Add and adjust comments.
	(CMD_LIST_AMBIGUOUS): Moved here.
	(help_cmd, help_cmd_list): Delete declarations.
2012-01-05 11:39:31 +00:00
Joel Brobecker ce1b17c4a3 Document new procedure for updating copyright years
We now use a different script to perform the update.  This patch
updates the procedure in our documentation

gdb/doc/ChangeLog:

        * gdbint.texinfo (Start of New Year Procedure): Update
        to replace use of copyright.sh by use of copyright.py.
2012-01-05 09:41:03 +00:00
gdbadmin c40a53a844 *** empty log message *** 2012-01-05 00:00:33 +00:00
Doug Evans e5fe5e75a8 * dwarf2read.c (dwarf2_read_abbrevs): Delete arg "abfd".
All callers updated.
	(load_full_type_unit): Renamed from read_signatured_type_at_offset.
	Replace all arguments with "per_cu".  All callers updated.
2012-01-04 19:49:41 +00:00
Doug Evans 28dee7f53d * dwarf2read.c (dwarf2_per_cu_data): Remove outdated comment. 2012-01-04 19:16:15 +00:00
Doug Evans 23745b4786 * dwarf2read.c (init_one_comp_unit): Delete arg "objfile".
New arg "per_cu".  All callers updated.
2012-01-04 19:07:36 +00:00
Doug Evans 5953832c5a Delete #if 0'd out code.
* language.c (binop_result_type): Delete.
	(simple_type, ordered_type, same_type, integral_type): Delete.
	(numeric_type, character_type, string_type, boolean_type): Delete.
	(float_type, structured_type): Delete.
	* language.h: Update.
2012-01-04 18:57:01 +00:00
Tom Tromey 0f5b75627b * python/py-value.c (valpy_binop): Initialize 'res_val'. 2012-01-04 16:15:14 +00:00
Joel Brobecker 78218f5600 Get rid of corefile.c:close_exec_file
The body of this function has been commented out since Jul 1999, and
thus seems unnecessary. While at it, remove some commented out code
that seems to be related to the function being deleted.

gdb/ChangeLog:

	* corefile.c (close_exec_file): Delete.
	(reopen_exec_file): Remove commented out code that seems related
	to close_exec_file, which is being deleted here.
	* inferior.h (close_exec_file): Delete.
	* fork-child.c (fork_inferior): Remove call to fork_inferior.
2012-01-04 15:13:26 +00:00
Joel Brobecker 0fcd72ba37 Use skip_spaces and skip_to_space in ada-lang.c
This is just a minor cleanup that reduces a bit the code in ada-lang.c
by using skip_spaces or skip_to_space, instead of doing the skipping
ourselves.

gdb/ChangeLog:

        * ada-lang.c: #include "cli/cli-utils.h".
        (get_selections): Use skip_spaces.
        (ada_get_next_arg): Use skip_spaces and skip_to_space.
        (catch_ada_exception_command_split): Use skip_spaces.
        (ada_decode_assert_location): Likewise.
2012-01-04 14:55:09 +00:00
Yao Qi 5e0a92a986 gdb/gdbserver/
* tracepoint.c (cmd_qtdp): Print debug message
	for static tracepoint.
2012-01-04 14:39:12 +00:00
Yao Qi ae639e8c92 gdb/gdbserver/
* tracepoint.c (trace_vdebug): Differentiate debug message
	between gdbserver and IPA.
2012-01-04 14:34:49 +00:00
Joel Brobecker 1dabb4c407 do not call decode_compound with Ada expressions.
Trying to insert a breakpoint on `ops."<"', we get the following error:

    (gdb) b ops."<"
    malformed template specification in command

This is because locate_first_half skips the linespec until the dot,
and the decode_line_internal thinks that the dot might mean that
we have C++ or Java compound.  It then tries calling decode_compound
which errors out because it sees the opening angle bracket but not
the closing one (I am guessing).

This patch short-circuits this part of the code when the current
language is Ada.

gdb/ChangeLog:

        * linespec.c (decode_line_internal): Check for C++ or Java
        compound constructs only if the current language is C, C++
        or Java.
2012-01-04 14:24:57 +00:00
Jan Kratochvil 5931a2fae3 gdb/
Revert:
	2012-01-02  Jan Kratochvil  <jan.kratochvil@redhat.com>
		    Joel Brobecker  <brobecker@adacore.com>
	Fix regression for gdb.cp/gdb2495.exp with gcc-4.7.
	* arch-utils.c (displaced_step_at_entry_point): Incrase BP_LEN skip to
	3 times.
	* infcall.c (call_function_by_hand) <AT_SYMBOL>: Move it upwards and
	fall through into AT_ENTRY_POINT.
	(call_function_by_hand) <AT_ENTRY_POINT>: New variable bp_len.  Adjust
	DUMMY_ADDR with it.
	* ppc-linux-tdep.c (ppc_linux_displaced_step_location): Increase
	PPC_INSN_SIZE skip to 3 times.
2012-01-04 13:51:36 +00:00
Joel Brobecker 1a2da5eef0 linespec: keep function descriptors during minimal symbol search
When discarding data (minimal) symbols, we need to be careful to
not throw away the function descriptors.  This makes a difference
on platforms where these descriptors are used and live in a data
section.

gdb/ChangeLog:

        * linespec.c (add_minsym): Preserve function descriptors.
2012-01-04 13:15:20 +00:00
Ulrich Weigand 8645ff697e * breakpoint.c (all_locations_are_pending): Consider locations
in program spaces executing during startup pending as well.
2012-01-04 12:31:49 +00:00
Joel Brobecker c5a5708100 Copyright year update in most files of the GDB Project.
gdb/ChangeLog:

        Copyright year update in most files of the GDB Project.
2012-01-04 08:28:28 +00:00
Joel Brobecker 0b30217134 Copyright year update in most files of the GDB Project.
gdb/ChangeLog:

        Copyright year update in most files of the GDB Project.
2012-01-04 08:17:56 +00:00
Joel Brobecker 8ba098ad42 use gnulib's update-copyright script to update copyright years
This patch now retires the old copyright.sh script which was using
emacs to perform the copyright update. It also completely rewrite
copyright.py to call update-copyright with the appropriate list
of files.

In addition to calling update-copyright, the new script also performs
a sanity-check on all the files that update-copyright could not update,
and sees whether the file might contain a copyright notice that
the script could not decipher.

gdb/ChangeLog:

        * copyright.sh: Delete.
        * copyright.py: Rewrite.
2012-01-04 07:55:48 +00:00
Joel Brobecker 09c01c304b Import gnulib's update-copyright script
gdb/ChangeLog:

        * gnulib/extra/update-copyright: New file, imported from gnulib.
2012-01-04 07:55:13 +00:00
Joel Brobecker 3c36c0af46 [README] Add note about copyright and license notices
Also explain the use of year ranges in copyright notices.

gdb/ChangeLog:

        * README (Copyright and License Notices): New section.
2012-01-04 04:11:38 +00:00
gdbadmin 41f402b626 *** empty log message *** 2012-01-04 00:00:33 +00:00
Tom Tromey 888fe1e1d8 PR python/12533:
* python/py-value.c (valpy_dereference, valpy_get_address
	valpy_get_dynamic_type, valpy_lazy_string, valpy_do_cast)
	(valpy_getitem, valpy_call, valpy_binop, valpy_negative)
	(valpy_absolute, valpy_richcompare): Free intermediate values.
2012-01-03 19:27:52 +00:00
Joel Brobecker 6e68186627 more copyright notice reformatting.
gdb/ChangeLog:

        * ada-lang.c: Reformat the copyright notice.

gdb/testsuite/ChangeLog:

        * gdb.base/auxv.exp: Reformat the copyright notice.
2012-01-03 13:31:01 +00:00
Yao Qi 3c2d6aff67 gdb/testsuite/
* gdb.trace/strace.exp (strace_trace_on_same_addr): New.
	(strace_trace_on_diff_addr): New.
	* gdb.trace/strace.c: (main): Add two local variables.
2012-01-03 02:38:37 +00:00
Yao Qi f72429c5cc gdb/gdbserver/
* tracepoint.c (tracepoint_was_hit): Don't collect for
	static tracepoint.
2012-01-03 02:26:52 +00:00
gdbadmin 2c7d41f09e *** empty log message *** 2012-01-03 00:00:33 +00:00
Ulrich Weigand 0852fee32a * gdb.cell/fork.exp: Delete breakpoints after reaching main.
* gdb.cell/gcore.exp: Likewise.
	* gdb.cell/solib-symbol.exp: Use "info symbol" instead of "break"
	to verify the correct instance of main is selected.
2012-01-02 18:04:26 +00:00
Jan Kratochvil 0cd09acb33 gdb/
* Makefile.in (ALL_TARGET_OBS): Remove solib-target.o.
	* configure.tgt (arm*-wince-pe, arm*-*-mingw32ce*, arm*-*-symbianelf*)
	(i[34567]86-*-dicos*, i[34567]86-*-cygwin*, i[34567]86-*-mingw32*)
	(x86_64-*-dicos*, x86_64-*-mingw*): Remove solib-target.o.
	Revert this part of:
	2012-01-02  Jan Kratochvil  <jan.kratochvil@redhat.com>
	Build gdb directly from *.o files not using libgdb.a.
	* Makefile.in (COMMON_OBS): Remove solib-target.o.
2012-01-02 17:18:46 +00:00
Joel Brobecker 12c3e59c33 Update the copyright header of various files...
... to follow the correct syntax (according to the gospel of
gnulib's update-copyright). In other words:
  - no comma after the last year;
  - FSF spelled exactly "Free Software Foundation, Inc.", with
    the comma and the period at the end.

sim/common/ChangeLog:

	* dv-sockser.h, sim-assert.h, sim-fpu.c: Reformat the copyright
	header.

sim/m32c/ChangeLog:

	* blinky.S, gloss.S, sample.S: Reformat copyright header.

sim/mn10300/ChangeLog:

	* sim-main.h: Reformat copyright header.

sim/ppc/ChangeLog:

	* dp-bit.c: Reformat copyright header.

gdb/ChangeLog:

        * gdb/common/gdb_thread_db.h, gdb/dbxread.c, gdb/environ.c,
        gdb/gcore.h, gdb/rs6000-tdep.h, gdb/s390-nat.c, gdb/tic6x-tdep.c:
        Reformat the copyright header.

gdb/gdbserver/ChangeLog:

	* terminal.h: Reformat copyright header.

gdb/testsuite/ChangeLog:

	* dg-extract-results.sh, gdb.arch/gcore.c, gdb.arch/gdb1558.c,
	gdb.arch/i386-gnu-cfi.c, gdb.base/complex.c, gdb.base/cvexpr.c,
	gdb.base/gcore.c, gdb.base/gdb1555-main.c, gdb.base/gdb1555.c,
	gdb.base/gdb1821.c, gdb.base/long_long.c, gdb.base/restore.c,
	gdb.base/sepdebug.c, gdb.base/type-opaque-lib.c,
	gdb.base/type-opaque-main.c, gdb.cp/maint.exp, gdb.cp/namespace1.cc,
	gdb.cp/pr9631.cc, gdb.cp/psmang1.cc, gdb.cp/psmang2.cc,
	gdb.cp/try_catch.cc, gdb.cp/virtfunc.cc, gdb.hp/gdb.base-hp/reg.exp,
	gdb.mi/basics.c, gdb.mi/mi-stack.c, gdb.mi/mi-var-child.c,
	gdb.mi/mi2-var-child.exp, gdb.mi/var-cmd.c,
	gdb.threads/thread_check.c: Reformat copyright header.
2012-01-02 15:37:37 +00:00
Jan Kratochvil 11bf149050 gdb/
Revert this part of:
	2012-01-02  Jan Kratochvil  <jan.kratochvil@redhat.com>
	Remove the gdbtui binary.
	* gdb.c (main): Remove args.interpreter_p initialization.
	* main.c (captured_main): Set INTERPRETER_P directly by INTERP_CONSOLE.
	* main.h (struct captured_main_args): Remove interpreter_p.
2012-01-02 13:29:57 +00:00
Joel Brobecker 1fef196fe0 Add fnchange.lst entry for gdb/ChangeLog-2011.
gdb/ChangeLog:

	* config/djgpp/fnchange.lst: Add entry for ChangeLog-2011.
2012-01-02 09:03:09 +00:00
Joel Brobecker 6782781204 gdb/gdbserver/gdbreplay: Update copyright year in version out
gdb/ChangeLog:

	* top.c (print_gdb_version): Update copyright year.

gdb/gdbserver/ChangeLog:

	* server.c (gdbserver_version): Update copyright year.
	* gdbreplay.c (gdbreplay_version): Likewise.
2012-01-02 08:59:35 +00:00
Joel Brobecker 0c10e53e43 Rotate GDB ChangeLog for 2012. 2012-01-02 08:58:08 +00:00
Yao Qi a4d0b8315f gdb/
* inf-ptrace.c (inf_ptrace_xfer_partial): Reindent.
2012-01-02 03:59:35 +00:00
Jan Kratochvil b5914469f9 gdb/
Fix regression for gdb.cp/gdb2495.exp with gcc-4.7.
	* arch-utils.c (displaced_step_at_entry_point): Incrase BP_LEN skip to
	3 times.
	* infcall.c (call_function_by_hand) <AT_SYMBOL>: Move it upwards and
	fall through into AT_ENTRY_POINT.
	(call_function_by_hand) <AT_ENTRY_POINT>: New variable bp_len.  Adjust
	DUMMY_ADDR with it.
	* ppc-linux-tdep.c (ppc_linux_displaced_step_location): Increase
	PPC_INSN_SIZE skip to 3 times.
2012-01-02 02:52:20 +00:00
Jan Kratochvil 8da828f760 gdb/
* amd64-linux-nat.c (update_debug_registers_callback): New comment on
	the return value.
	* i386-linux-nat.c (update_debug_registers_callback): Likewise.
2012-01-02 02:42:24 +00:00
Jan Kratochvil 8574e74b2b gdb/
Build gdb directly from *.o files not using libgdb.a.
	* Makefile.in (SUBDIR_TUI_OBS): Remove duplicate tui.o.
	(COMMON_OBS): Remove solib-target.o.
	(LIBGDB_OBS, libgdb.a): Move it before the gdb$(EXEEXT) rule.
	(gdb$(EXEEXT)): Replace libgdb.a with $(LIBGDB_OBS).
	(LIBGDB_OBS, libgdb.a): Move it above.
	* configure.tgt (alpha*-*-linux*, alpha*-*-freebsd*)
	(alpha*-*-kfreebsd*-gnu, alpha*-*-netbsd*, alpha*-*-knetbsd*-gnu)
	(alpha*-*-openbsd*, am33_2.0*-*-linux*, arm*-wince-pe)
	(arm*-*-mingw32ce*, arm*-*-linux*, arm*-*-netbsd*, arm*-*-knetbsd*-gnu)
	(arm*-*-openbsd*, cris*, frv-*-*, hppa*-*-hpux*, hppa*-*-linux*)
	(hppa*-*-netbsd*, hppa*-*-openbsd*, i[34567]86-*-darwin*)
	(i[34567]86-*-dicos*, i[34567]86-*-freebsd*, i[34567]86-*-kfreebsd*-gnu)
	(i[34567]86-*-netbsd*, i[34567]86-*-knetbsd*-gnu, i[34567]86-*-openbsd*)
	(i[34567]86-*-nto*, i[34567]86-*-solaris2.1[0-9]*)
	(x86_64-*-solaris2.1[0-9]*, i[34567]86-*-solaris*, i[34567]86-*-linux*)
	(i[34567]86-*-gnu*, ia64-*-linux*, m32r*-*-linux*, m68*-*-linux*)
	(m68*-*-netbsd*, m68*-*-knetbsd*-gnu, m68*-*-openbsd*)
	(microblaze*-linux-*, microblaze*-*-linux*, mips*-sgi-irix5*)
	(mips*-sgi-irix6*, mips*-*-linux*, mips*-*-netbsd*)
	(mips*-*-knetbsd*-gnu, mips64*-*-openbsd*, powerpc-*-netbsd*)
	(powerpc-*-knetbsd*-gnu, powerpc-*-openbsd*, powerpc-*-aix*, rs6000-*-*)
	(powerpc-*-linux*, powerpc64-*-linux*, powerpc*-*-*, s390*-*-*)
	(sh*-*-linux*, sh*-*-netbsdelf*, sh*-*-knetbsd*-gnu, sh*-*-openbsd*)
	(sparc-*-linux*, sparc64-*-linux*, sparc*-*-freebsd*)
	(sparc*-*-kfreebsd*-gnu, sparc-*-netbsd*, sparc-*-knetbsd*-gnu)
	(sparc64-*-netbsd*, sparc64-*-knetbsd*-gnu, sparc-*-openbsd*)
	(sparc64-*-openbsd*, sparc-*-solaris2.[0-6], sparc-*-solaris2.[0-6].*)
	(sparc-*-solaris2*, sparcv9-*-solaris2*, sparc64-*-solaris2*)
	(vax-*-netbsd*, vax-*-knetbsd*-gnu, x86_64-*-darwin*, x86_64-*-dicos*)
	(x86_64-*-linux*, x86_64-*-freebsd*, x86_64-*-kfreebsd*-gnu)
	(x86_64-*-netbsd*, x86_64-*-knetbsd*-gnu, x86_64-*-openbsd*)
	(xtensa*-*-linux*, xtensa*): Remove solib.o from gdb_target_obs.
2012-01-02 02:31:18 +00:00
Jan Kratochvil 217bff3e3f gdb/
Remove the gdbtui binary.
	* .gitignore (/gdbtui): Remove.
	* Makefile.in (TUI): Remove.
	(SUBDIR_TUI_OBS): Remove tui-main.o.
	(SUBDIR_TUI_SRCS): Remove tui/tui-main.c.
	(all-tui, install-tui, uninstall-tui, $(TUI)$(EXEEXT), clean-tui)
	(tui-main.o): Remove.
	(all_object_files): Remove tui-main.o.
	* NEWS: New note for the gdbtui removal.
	* configure: Rebuilt.
	* configure.ac: No longer add all-tui, clean-tui, install-tui and
	uninstall-tui to CONFIG_ALL, CONFIG_CLEAN, CONFIG_INSTALL and
	CONFIG_UNINSTALL respectively.
	* gdb.c (main): Remove args.interpreter_p initialization.
	* main.c (captured_main): Set INTERPRETER_P directly by INTERP_CONSOLE.
	* main.h (struct captured_main_args): Remove interpreter_p.
	* tui/tui-main.c: Remove.

gdb/doc/
	Remove the gdbtui binary.
	* all-cfg.texi (GDBTUI): Remove.
	* gdb.texinfo (Mode Options): Remove the GDBTUI reference.
	(TUI): Remove GDBTUI pindex.  Remove the GDBTUI reference.
	* gdbint.texinfo (Testsuite): Replace `gdbtui' by `gdb -tui'.
2012-01-02 02:28:59 +00:00
Doug Evans bb5ed36303 * dwarf2read.c (dwarf2_compute_name): Simplify objfile references.
(dwarf2_physname, read_import_statement): Ditto.
	(read_call_site_scope, dwarf2_record_block_ranges): Ditto.
	(process_structure_scope read_subroutine_type): Ditto.
	(read_typedef, load_partial_dies, read_partial_die): Ditto.
	(find_partial_die, dwarf_decode_lines, lookup_die_type): Ditto.
	(dwarf2_fetch_die_location_block): Ditto.
	(dwarf_decode_macros, dwarf2_symbol_mark_computed): Ditto.
2012-01-02 01:23:41 +00:00
Doug Evans a0f42c2110 * dwarf2read.c (read_signatured_type): Delete `objfile' arg.
All callers updated.
	(load_full_comp_unit, queue_comp_unit, process_queue): Ditto.
	(dw2_do_instantiate_symtab, dw2_instantiate_symtab): Ditto.
	(process_psymtab_comp_unit, load_partial_comp_unit): Ditto.
2012-01-02 00:50:07 +00:00
Doug Evans 2dc860c0ac * dwarf2read.c (load_cu): Move assert to more useful location. 2012-01-02 00:29:19 +00:00
Doug Evans 68dc6402dc * dwarf2read.c (free_heap_comp_unit): Renamed from free_one_comp_unit.
All callers updated.
2012-01-02 00:23:50 +00:00
Doug Evans 9cdd5dbd27 * dwarf2read.c (dwarf2_per_objfile): Add comment.
(dwarf2_elf_names): Minor reformat.
	(dwarf2_per_cu_data): Tweak comment.
	(dwarf2_read_section): Fix comment.
	(create_all_comp_units): Fix comment.
	(load_full_comp_unit): Fix comment.
	(process_full_comp_unit): Fix comment.
	(read_signatured_type): Fix comment.
2012-01-02 00:09:58 +00:00
gdbadmin 36a4f917f3 *** empty log message *** 2012-01-02 00:00:03 +00:00
gdbadmin 5de8732ddb *** empty log message *** 2012-01-01 00:00:03 +00:00
Doug Evans 3c8e0968a5 * dwarf2read.c (read_typedef): Guard against self-referential typedefs. 2011-12-31 17:18:13 +00:00
gdbadmin fbb23c67d6 *** empty log message *** 2011-12-31 00:00:03 +00:00
Edjunior Barbosa Machado e4a7ca93ab Fixing previous Changelog entry (removing the unnecessary "gdb/testsuite/" line
and adding the missing period)
2011-12-30 14:30:39 +00:00
Edjunior Barbosa Machado c0f378ec1b 2011-12-30 Edjunior Machado <emachado@linux.vnet.ibm.com>
gdb/testsuite/
	* gdb.python/py-finish-breakpoint.exp: Add `.' prefix for ppc64
	* gdb.python/py-finish-breakpoint2.exp: Skip testcase if python support
	is not enabled.
2011-12-30 14:11:57 +00:00
gdbadmin 2f2f5c674d *** empty log message *** 2011-12-30 00:00:33 +00:00
gdbadmin 9466658bc7 *** empty log message *** 2011-12-29 00:00:33 +00:00
Jan Kratochvil 1668ae2500 gdb/
* gdbarch.sh (max_insn_length): Extend the comment by unit.
	* gdbarch.h: Regenerate.
2011-12-28 18:45:46 +00:00
Joel Brobecker 1417b39dad varobj.c:varobj_update minor reformatting
gdb/ChangeLog:

        * varobj.c (varobj_update): Minor reformatting, putting the function
        name at the start of the next line.
2011-12-28 07:05:20 +00:00
gdbadmin 40a01f6f32 *** empty log message *** 2011-12-28 00:00:02 +00:00
Doug Evans 7019d805c7 * dwarf2read.c (struct dwarf2_cu): Delete members first_fn, last_fn,
cached_fn.
	(struct function_range): Delete.
	(initialize_cu_func_list, add_to_cu_func_list): Delete.  All callers
	updated.
	(check_cu_functions): Ditto.
2011-12-27 23:41:59 +00:00
Mark Kettenis e8ace1c0f4 2011-12-27 Mark Kettenis <kettenis@gnu.org>
* inf-ptrace.c [PT_IO && PIOD_READ_AUXV]
       (inf_ptrace_xfer_partial): Implement TARGET_OBJECT_AUXV.
       (inf_ptrace_auxv_parse): New function.
       (inf_ptrace_target): Initialize to_auxv_parse field.
2011-12-27 21:36:40 +00:00
Jan Kratochvil 3bc96cfbb2 gdb/testsuite/
* gdb.python/py-finish-breakpoint.c (test_exec_exit): Change the
	parameter to self_exec, adjust the function.
	(main): Check for argv[1] "exit".  Use argv[0] for test_exec_exit.
	* gdb.python/py-finish-breakpoint.exp (set var self_exec = 0): New test.
	(set var do_exit = 0): Remove test.
	(newline at end of file): Add one.
2011-12-27 21:29:41 +00:00
Joel Brobecker c04316705c New function ada-lang.c:should_use_wild_match...
... to avoid code duplication.

gdb/ChangeLog:

        * ada-lang.c (should_use_wild_match): New function.
        (ada_lookup_simple_minsym): Use should_use_wild_match.
        Minor simplification.  Add comment.
        (ada_lookup_symbol_list): Use should_use_wild_match.
        Minor simplification.
2011-12-27 04:17:55 +00:00
Joel Brobecker 41843fe8ff remove use of sprintf in py-finishbreakpoint.c...
... and replace it with call to xsnprintf, following GDB's coding rules.

gdb/ChangeLog:

        * py-finishbreakpoint.c (bpfinishpy_init): Replace call to
        sprintf by call to xsnprintf.
2011-12-27 04:12:10 +00:00
Joel Brobecker 095bcf5ed3 Ignore data minimal symbols for breakpoint linespecs
gdb/ChangeLog:

        * linespec.c (struct collect_minsyms) [list_mode]: New field.
        (add_minsym): Ignore data symbols if not in list mode.
        (search_minsyms_for_name): Set local.list_mode.

gdb/testsuite/ChangeLog:

        * gdb.base/dmsym.c, gdb.base/dmsym_main.c, gdb.base/dmsym.exp:
        New files.
2011-12-27 04:07:04 +00:00
Joel Brobecker 9c5e43861d Improve gdb_realpath for Windows hosts
On Windows hosts, gdb_realpath is just an xstrdup. This makes filename
comparisons on Windows very chancy. Normally, we would normalize both
paths, and then compare.  But since the normalization doesn't do
anything, two equivalent names on Windows might not match.  This can
happen when trying to insert a breakpoint using the fullpath of a file.
For instance, if the compiler generated debug info that says that
the compilation directory is: `c:\\some\\double\\slashes\\dir', then
trying to insert a breakpoint on `c:/some/double/slashes/dir/foo.c:4'
does not work:

    (gdb) b c:/some/double/slashes/dir/foo.c:4
    No source file named c:/some/double/slashes/dir/foo.c:4.
    (gdb) b c:\some\double\slashes\dir\foo.c:4
    No source file named c:\some\double\slashes\dir\foo.c:4.

This fixes the problem by enhancing gdb_realpath on Windows hosts.
The code is inspired from libiberty's lrealpath.

gdb/ChangeLog:

        * utils.c (gdb_realpath): Add better support for Windows hosts.
2011-12-27 04:03:58 +00:00
gdbadmin ca5202fb32 *** empty log message *** 2011-12-27 00:00:03 +00:00
Jan Kratochvil 18d19bd150 gdb/testsuite/
Fix racy FAILs.
	* gdb.threads/fork-thread-pending.c (barrier): New variable.
	(thread_function, thread_forker): Call pthread_barrier_wait for it.
	(main): Call pthread_barrier_init for it.
2011-12-26 21:37:17 +00:00
Jan Kratochvil e809353af1 gdb/testsuite/
Fix double send_gdb leading to racy FAILs.
	* gdb.base/break.exp (set silent break bp_location1): Replace
	3x send_gdb and gdb_expect by gdb_test.
	* gdb.base/fileio.exp: Replace 2x send_gdb by gdb_exit and sleep.
	* gdb.base/foll-vfork.exp (vfork_and_exec_child_follow_to_main_bp)
	(vfork_and_exec_child_follow_through_step): Use gdb_test_no_output
	instead of send_gdb.  Twice.
	* gdb.base/sepdebug.exp (set silent break bp_location1): Replace
	3x send_gdb and gdb_expect by gdb_test.
	* gdb.mi/mi-nsmoribund.exp: Replace 3x send_gdb by mi_gdb_test.
2011-12-26 11:24:55 +00:00
gdbadmin 15daccb2f7 *** empty log message *** 2011-12-26 00:00:03 +00:00
gdbadmin 02e49516c9 *** empty log message *** 2011-12-25 00:00:02 +00:00
Jan Kratochvil da8cb7ec98 gdb/testsuite/
* gdb.linespec/linespec.exp: Compile using {c++}.
2011-12-24 23:54:20 +00:00
gdbadmin b4a2e9b4e1 *** empty log message *** 2011-12-24 00:00:02 +00:00
Jan Kratochvil ae1a303ef4 gdb/testsuite/
* gdb.cp/templates.exp (test_template_typedef): Import gdb_prompt.
	(print destructor of template typedef): Extend it for gcc/51668 XFAIL.
	(verify GCC PR debug/51668): New test.
2011-12-23 18:01:26 +00:00
Kevin Pouget cc72b2a2da Introduce gdb.FinishBreakpoint in Python
* Makefile.in (SUBDIR_PYTHON_OBS): Add py-finishbreakpoint.o.
	(SUBDIR_PYTHON_SRCS): Add python/py-finishbreakpoint.c.
	Add build rule for this file.
	* infcmd.c (print_return_value): Split to create get_return_value.
	(get_return_value): New function based on print_return_value. Handle
	case where stop_registers are not set.
	* inferior.h (get_return_value): New prototype.
	* python/py-breakpoint.c (bppy_pending_object): Make non-static.
	(gdbpy_breakpoint_created): Set is_py_finish_bp is necessary.
	(struct breakpoint_object): Move to python-internal.h
	(BPPY_REQUIRE_VALID): Likewise.
	(BPPY_SET_REQUIRE_VALID): Likewise.
	(gdbpy_breakpoint_created): Initialize is_finish_bp.
	(gdbpy_should_stop): Add  pre/post hooks before/after calling stop
	method.
	* python/python-internal.h (breakpoint_object_type): Add as extern.
	(bppy_pending_object): Likewise.
	(typedef struct breakpoint_object) Removed.
	(struct breakpoint_object): Moved from py-breakpoint.c.
	Add field is_finish_bp.
	(BPPY_REQUIRE_VALID): Moved from py-breakpoint.c.
	(BPPY_SET_REQUIRE_VALID): Likewise.
	(frame_object_to_frame_info): New prototype.
	(gdbpy_initialize_finishbreakpoints): New prototype.
	(bpfinishpy_is_finish_bp): Likewise.
	(bpfinishpy_pre_stop_hook): Likewise.
	(bpfinishpy_post_stop_hook): Likewise.
	* python/py-finishbreakpoint.c: New file.
	* python/py-frame.c(frame_object_to_frame_info): Make non-static and
	accept PyObject instead of frame_object.
	(frapy_is_valid): Don't cast to frame_object.
	(frapy_name): Likewise.
	(frapy_type): Likewise.
	(frapy_unwind_stop_reason): Likewise.
	(frapy_pc): Likewise.
	(frapy_block): Likewise.
	(frapy_function): Likewise.
	(frapy_older): Likewise.
	(frapy_newer): Likewise.
	(frapy_find_sal): Likewise.
	(frapy_read_var): Likewise.
	(frapy_select): Likewise.
	* python/python.c (gdbpy_is_stopped_at_finish_bp): New noop function.
	(_initialize_python): Add gdbpy_initialize_finishbreakpoints.
	* python/python.h: Include breakpoint.h
	(gdbpy_is_stopped_at_finish_bp): New prototype.

doc/
	* gdb.texinfo (Finish Breakpoints in Python): New subsection.
	(Python API): Add menu entry for Finish Breakpoints.

testsuite/
	* Makefile.in (EXECUTABLES): Add py-finish-breakpoint and
	py-finish-breakpoint2
	(MISCALLANEOUS): Add py-events-shlib.so and py-events-shlib-nodebug.so
	* gdb.python/py-breakpoint.exp (mult_line): Define and use variable
	instead of line number.
	* gdb.python/py-finish-breakpoint.c: New file.
	* gdb.python/py-finish-breakpoint.exp: New file.
	* gdb.python/py-finish-breakpoint.py: New file.
	* gdb.python/py-finish-breakpoint2.cc: New file.
	* gdb.python/py-finish-breakpoint2.exp: New file.
	* gdb.python/py-finish-breakpoint2.py: New file.
2011-12-23 17:06:16 +00:00
Jan Kratochvil 6538471c25 gdb/testsuite/
Fix compatibility with gcc-4.7.
	* gdb.python/py-frame-inline.c (f): Use inline for __always_inline__.
2011-12-23 14:57:39 +00:00
Jan Kratochvil 3b7962f954 gdb/testsuite/
Partial fix of compatibility with gcc-4.7.
	* gdb.cp/templates.exp (ptype T5<int>, ptype t5i): Turn all PASS cases
	into XFAIL "new without size_t".  Permit size_t for the KFAIL case.
	Add comment to add a PASS case in the future.
2011-12-23 14:49:54 +00:00
gdbadmin 23cb30dead *** empty log message *** 2011-12-23 00:00:03 +00:00
Tom Tromey e848a8a515 PR python/12533:
* value.h (release_value_or_incref): Declare.
	* value.c (struct value) <released>: New field.
	(free_all_values, release_value, value_release_to_mark): Update
	'released'.
	(release_value_or_incref): New function.
	* python/py-value.c (valpy_new): Use release_value_or_incref.
	(value_to_value_object): Likewise.
	* varobj.c (install_new_value): Move value_incref earlier.
2011-12-22 19:51:10 +00:00
Tom Tromey 87784a4754 * value.c (struct value) <modifiable, lazy, optimized_out,
initialized, stack>: Now bitfields.  Move to top.
	<reference_count>: Move earlier.
2011-12-22 19:41:59 +00:00
Tom Tromey b19686e08b * minsyms.h: Rearrange. Document header and all functions.
* minsyms.c: Move some comments to minsyms.h.
2011-12-22 02:34:34 +00:00
gdbadmin cbbc9a5c83 *** empty log message *** 2011-12-22 00:00:33 +00:00
Tom Tromey c35384fbef * symtab.h: Include minsyms.h.
(prim_record_minimal_symbol, prim_record_minimal_symbol_full)
	(prim_record_minimal_symbol_and_info, msymbol_hash_iw)
	(msymbol_hash, SYMBOL_HASH_NEXT, msymbol_objfile)
	(lookup_minimal_symbol, lookup_minimal_symbol_text)
	(lookup_minimal_symbol_solib_trampoline)
	(lookup_minimal_symbol_by_pc_name, lookup_minimal_symbol_by_pc)
	(iterate_over_minimal_symbols, lookup_minimal_symbol_and_objfile)
	(lookup_minimal_symbol_by_pc_section)
	(lookup_solib_trampoline_symbol_by_pc)
	(init_minimal_symbol_collection)
	(make_cleanup_discard_minimal_symbols, install_minimal_symbols)
	(msymbols_sort): Move to minsyms.h.
	* objfiles.c (terminate_minimal_symbol_table): Move to minsyms.c.
	* minsyms.c (terminate_minimal_symbol_table): Move from
	objfiles.c.
	* minsyms.h: New file.
2011-12-21 21:51:57 +00:00
Tom Tromey a5bd37c3ca * hppa-hpux-tdep.c (hppa64_hpux_search_dummy_call_sequence): Use
ALL_OBJFILE_MSYMBOLS.
	(hppa_hpux_find_dummy_bpaddr): Likewise.
	* jit.c (jit_object_close_impl): Use
	terminate_minimal_symbol_table.
2011-12-21 21:34:25 +00:00
Tom Tromey 0af1e9a54b * elfread.c (elf_symtab_read): Put the filename in the filename
bcache.
2011-12-21 21:30:31 +00:00
Tom Tromey 04aba06513 * symtab.h (struct minimal_symbol) <filename>: Now const. 2011-12-21 21:24:59 +00:00
Ulrich Weigand 7052e42c35 gdb/
PR tdep/12797
	* arm-tdep.c (arm_return_value): Handle complex types.

gdb/testsuite/
	PR tdep/12797
	* gdb.base/callfuncs.exp: Remove KFAIL.
2011-12-21 21:13:15 +00:00
Andreas Schwab f16c4e8bdd * ppc-linux-nat.c (create_watchpoint_request): Only use ranged
watchpoints when supported.
2011-12-21 15:27:29 +00:00
Jan Kratochvil 4ac39b9724 gdb/
* symfile.c (objfilep): New typedef and new DEF_VEC_P.
	(reread_symbols): Remove variable reread_one, new variables
	new_objfiles, all_cleanups and ix.  Use new_objfiles instead of
	reread_one.  Push changed objfiles to new_objfiles, call
	observer_notify_new_objfile for them later.
2011-12-21 14:25:53 +00:00
Joel Brobecker bb2f58dc41 Use symbol search name in expand_symtabs_matching_via_partial...
We are iterating over all symbols in a partial symtab that would
match a given name, so we should match the partial symbols
search name against the given name rather than using the natural
name.  In C++, that does not make a difference, but it does in
Ada, because Ada searches using the symbol encoded name...

We also update the generation of the .gdb_index file to match this
change in the search. Although technically an incompatible change,
we do not increment the gdb_index version number, because Ada is
the only language where it would make a difference - except that
this feature is not supported for Ada.

gdb/ChangeLog:

        * psymtab.c (expand_symtabs_matching_via_partial): Match
        the partial symbols using their SYMBOL_SEARCH_NAME.
        * symfile.h (struct quick_symbol_functions): Udate the
        documentation of expand_symtabs_matching.
        * dwarf2read.c (write_psymbols): Use SYMBOL_SEARCH_NAME instead
        of SYMBOL_NATURAL_NAME in index entry.
2011-12-21 07:34:09 +00:00
Joel Brobecker 53907c915d Add handling for unqualified Ada operators in linespecs
This patch enhances the linespec parser to recognize unqualified
operator names in linespecs. This allows the user to insert a breakpoint
on operator "+" as follow, for instance:

        (gdb) break "+"

Previously, it was possible to insert such a breakpoint, but one
had to fully qualify the function name. For instance:

        (gdb) break ops."+"

gdb/ChangeLog:

        * linespec.c (locate_first_half): Add handling of Ada operators
        when the current language is Ada.
2011-12-21 07:24:40 +00:00
Joel Brobecker 50f8ea949d missing check against overlay_debugging in objfiles.c
This fixes a problem where the debugger is trying to locate a minimal
symbol from its address, when the symbol is inside a section whose
VMA is different from its LMA.

We have a program that was built on ppc-elf using a linker script
such that data sections are placed in ROM, and then loaded onto RAM
at execution.  So their VMA addresses are indeed different from
their LMA address.

Unfortunately, there is one place where GDB gets slightly confused
into thinking that these data sections are overlayed, while it's
not the case here.  This show up when trying to print the list of
Ada tasks, where GDB is unable to determine their names, and thus
prints a generic `Ravenscar task' instead:

    (gdb) info tasks
       ID       TID P-ID Pri State                  Name
        1     1d580      127 Delay Sleep            Ravenscar task
        2     183f8      127 Delay Sleep            Ravenscar task
    *   3     13268      127 Runnable               Ravenscar task

We expected:

    (gdb) info tasks
       ID       TID P-ID Pri State                  Name
        1     1d580      127 Delay Sleep            environment_task
        2     183f8      127 Delay Sleep            raven2
    *   3     13268      127 Runnable               raven1

The name of the task is determined by looking up the symbol table
using the task ID, which is the address where the symbol is defined.
So, ada-tasks calls...

    msym = lookup_minimal_symbol_by_pc (task_id);

... which in turn first tries to determine the section associated
to this address (find_pc_section), which itself uses a map of sections
to find it. The map itself is recomputed every time objfiles are
loaded/changed by `update_section_map'. And `update_section_map'
relies on `insert_section_p' to determine whether the section should
be inserted in the map or not.

This is where things get interesting for us, because `insert_section_p'
simply rejects overlay sections:

  if (lma != 0 && lma != bfd_section_vma (abfd, section)
      && (bfd_get_file_flags (abfd) & BFD_IN_MEMORY) == 0)
    /* This is an overlay section.  IN_MEMORY check is needed to avoid
       discarding sections from the "system supplied DSO" (aka vdso)
       on some Linux systems (e.g. Fedora 11).  */
    return 0;

However, it shouldn't reject our section in this case, since overlay
debugging is off.  The fix is to add a check that overlay debugging
is active before rejecting the section.  This is similar to what is
done in `section_is_overlay' (which takes obj_section objects), for
instance.

gdb/Changelog:

        * objfiles.c (insert_section_p): Do not detect overlay sections
        if overlay debugging is off.
2011-12-21 07:11:52 +00:00
Joel Brobecker 9ac7f98e7c [Ada] Breakpoints on task bodies
Consider the following declaration:

    package Pck is
       task Dummy_Task is
          entry Start;
       end Dummy_Task;
    end Pck;

Inserting a breakpoint on the body of that task does not currently
work:

    (gdb) b pck.dummy_task
    "pck.dummy_task" is not a function
    Make breakpoint pending on future shared library load? (y or [n]) n

What happens here is that the compiler generates two symbols:

  (a) Symbol `pck__dummy_task' which is a *variable* referencing
      the task;

  (b) Symbol `pck__dummy_taskTKB' which is the subprogram implementing
      the body of the task.

The symbol lookup only finds the variable before of the TKB suffix in
the subprogram name. This patch fixes the problem by adjusting the
ada-lang.c:is_name_suffix routine to recognize "TKB" suffixes.  But
that's not enough, because the search in the symtab is performed via
the block dictionary, using a hashing algorithm. So, for the search
to find `pck__dummy_taskTKB', I had to modify the hashing function
to ignore TKB suffixes as well.

gdb/ChangeLog:

        * ada-lang.c (is_name_suffix): Add handling of "TKB" suffixes.
        Update function documentation.
        * dictionary.c (dict_hash): Ignore "TKB" suffixes in hash
        computation.

gdb/testsuite/ChangeLog:

        * gdb.ada/task_bp: New testcase.
2011-12-21 07:10:59 +00:00
gdbadmin 496c2508ac *** empty log message *** 2011-12-21 00:00:33 +00:00
Pedro Alves 6e012a6c38 2011-12-20 Pedro Alves <alves.ped@gmail.com>
Jan Kratochvil  <jan.kratochvil@redhat.com>

        * linux-nat.c (add_lwp): Don't call linux_nat_new_thread on the
	first LWP.
	* amd64-linux-nat.c (update_debug_registers_callback): Instantiate
	`lwp->arch_private' if NULL.
	(amd64_linux_prepare_to_resume): Do nothing if `lwp->arch_private'
	is NULL.
	* i386-linux-nat.c (update_debug_registers_callback): Instantiate
	`lwp->arch_private' if NULL.
	(i386_linux_prepare_to_resume): Do nothing if `lwp->arch_private'
	is NULL.
2011-12-20 10:40:15 +00:00
Doug Evans 87c31f0622 * python/py-auto-load.c (info_auto_load_scripts): Pass address of
scripts vector to collect_matching_scripts.
	(collect_matching_scripts): Update.
2011-12-20 04:29:35 +00:00