Commit graph

52 commits

Author SHA1 Message Date
David Carlton
8d577d328a 2004-02-02 David Carlton <carlton@kealia.com>
* valops.c (enum oload_classification): New.
	(find_overload_match): Break implementation into separate
	functions; delete #if 0'd code; look for symbols within
	namespaces.
	(find_oload_champ_namespace,find_oload_champ_namespace_loop)
	(find_oload_champ,oload_method_static,classify_oload_match): New.
	* cp-support.h: Add declaration for cp_func_name; update
	declaration for make_symbol_overload_list.
	* cp-support.c (cp_func_name): New.
	(overload_list_add_symbol): Fix comment, use
	SYMBOL_LINKAGE_NAME and SYMBOL_NATURAL_NAME.
	(make_symbol_overload_list): Take a function name and a namespace
	instead of a symbol; change implementation.
	(make_symbol_overload_list_using): New.
	(make_symbol_overload_list_qualified, read_in_psymtabs): New.

2004-02-02  David Carlton  <carlton@kealia.com>

	* gdb.cp/overload.exp: Add overloadNamespace tests.
	* gdb.cp/overload.cc (dummyClass, dummyInstance): New.
	(overloadNamespace, XXX): New.
	(main): Call XXX::marker2.
2004-02-02 20:44:53 +00:00
Michael Chastain
ebac27b4c3 2004-01-29 Michael Chastain <mec.gnu@mindspring.com>
* gdb.cp/inherit.exp: Rewrite.  Use gdb_test_multiple and gdb
	for all tests.  Remove old hp-ux and cygnus xfail cases.
2004-01-30 01:37:42 +00:00
Michael Chastain
0a55bc2299 2004-01-24 Michael Chastain <mec.gnu@mindspring.com>
* gdb.cp/local.exp: Rewrite "ptype Local".  Add "ptype l".
	Provide arms for current output in all my configurations.
2004-01-27 02:43:35 +00:00
David Carlton
b368761e45 2004-01-23 David Carlton <carlton@kealia.com>
Partial workaround for PR c++/1511:
	* cp-namespace.c: Include frame.h.
	(cp_lookup_transparent_type): New
	(cp_lookup_transparent_type_loop): New.
	* cp-support.h: Declare cp_lookup_transparent_type.
	* symtab.c (basic_lookup_transparent_type): Renamed from
	lookup_transparent_type.
	(lookup_transparent_type): Replace old body by a call to
	current_language->la_lookup_transparent_type.
	* symtab.h: Update copyright.  Declare
	basic_lookup_transparent_type.
	* language.h: Update copyright.
	(struct language_defn): Add la_lookup_transparent_type.
	* language.c: Update copyright.
	(unknown_language_defn): Add basic_lookup_transparent_type.
	(auto_language_defn): Add basic_lookup_transparent_type.
	(local_language_defn): Add basic_lookup_transparent_type.
	* ada-lang.c: Update copyright.
	(ada_language_defn): Add basic_lookup_transparent_type.
	* c-lang.c: Update copyright.
	(c_language_defn): Add basic_lookup_transparent_type.
	(cplus_language_defn): Add basic_lookup_transparent_type.
	(asm_language_defn): Add basic_lookup_transparent_type.
	(minimal_language_defn): Add basic_lookup_transparent_type.
	* f-lang.c: Update copyright.
	(f_language_defn): Add basic_lookup_transparent_type.
	* jv-lang.c: Update copyright.
	(java_language_defn): Add basic_lookup_transparent_type.
	* m2-lang.c: Update copyright.
	(m2_language_defn): Add basic_lookup_transparent_type.
	* objc-lang.c: Update copyright.
	(objc_language_defn): Add basic_lookup_transparent_type.
	* p-lang.c: Update copyright.
	(p_language_defn): Add basic_lookup_transparent_type.
	* scm-lang.c: Update copyright.
	(scm_language_defn): Add basic_lookup_transparent_type.
	* Makefile.in (cp-namespace.o): Depend on frame.h.

2004-01-23  David Carlton  <carlton@kealia.com>

	* gdb.cp/rtti.exp: Don't include full path in ${srcfile}.  Add
	test for cp_lookup_transparent_type.
	* gdb.cp/rtti1.cc: Update copyright.  Add n2::func and refer_to;
	call them.
2004-01-23 23:03:31 +00:00
David Carlton
37fc574aa0 2004-01-23 David Carlton <carlton@kealia.com>
* gdb.cp/namespace.cc (C::ensureRefs): New.
	* gdb.cp/namespace1.cc (C::ensureOtherRefs): New.
2004-01-23 21:55:57 +00:00
Michael Chastain
997b095265 2004-01-18 Michael Chastain <mec.gnu@mindspring.com>
* gdb.cp/local.exp: Accept correct output for gcc v3 -gstabs+.
2004-01-19 04:06:42 +00:00
Michael Chastain
32c70722c3 2004-01-17 Michael Chastain <mec.gnu@mindspring.com>
* gdb.cp/templates.exp: Accept more spaces with "<foo, ?bar>"
	type patterns.
2004-01-18 04:18:56 +00:00
Michael Chastain
b0cecf36fd 2004-01-17 Michael Chastain <mec.gnu@mindspring.com>
* gdb.cp/templates.exp: Fix typo in test name of
	"print Foo<volatile char*>::foo".
2004-01-18 03:33:22 +00:00
David Carlton
3e5fc8d240 2004-01-14 David Carlton <carlton@bactrian.org>
* gdb.cp/rtti.exp: Update copyright.  KFAIL test with repect to
	PR c++/1511 and update coment.
	* gdb.cp/templates.exp: Update patterns to match current output.
	If changes involve something other than whitespace, KFAIL
	w.r.t. PR c++/1512 or PR c++/931 as appropriate.
2004-01-14 19:03:32 +00:00
David Carlton
63d06c5c42 2004-01-14 David Carlton <carlton@kealia.com>
Change symbols for C++ nested types to contain the fully qualified
	name, if possible.  (At least in the DWARF-2 case.)  Partial fix
	for PR's c++/57, c++/488, c++/539, c++/573, c++/609, c++/832,
	c++/895.
	* c-exp.y: Update copyright:
	(qualified_type): Handle types nested within classes.
	* cp-namespace.c: Update comments.
	(cp_set_block_scope): Delete #if 0.
	(cp_lookup_nested_type): Handle types nested within classes.
	* dwarf2read.c: (scan_partial_symbols): Call add_partial_structure
	when appropriate.
	(add_partial_symbol): Add the name of the enclosing namespace to
	types.
	(pdi_needs_namespace): New.
	(add_partial_namespace): Tweak comment.
	(add_partial_structure): New.
	(psymtab_to_symtab_1): Initialize processing_current_prefix
	here...
	(process_die): instead of here.
	(read_structure_scope): Try to figure out the name of the class or
	namespace that the structure might be defined within.
	(read_enumeration): Generate fully-qualified names, if possible.
	(read_namespace): Don't set name to NULL.
	(die_specification): New.
	(new_symbol): Generate fully-qualified names for types.
	(read_type_die): Determine appropriate prefix.
	(determine_prefix): New.
	(typename_concat): New.
	(class_name): New.
	* valops.c: Update copyright.
	(value_aggregate_elt): Pass NOSIDE to
	value_struct_elt_for_reference.
	(value_struct_elt_for_reference): Make static, add NOSIDE
	parameter, call value_maybe_namespace_elt as a last resort.
	(value_namespace_elt): Break out code into
	value_maybe_namespace_elt.
	(value_maybe_namespace_elt): New.

2004-01-14  David Carlton  <carlton@kealia.com>

	* gdb.cp/namespace.exp: Add tests involving classes defined within
	namespaces.
	* gdb.cp/namespace.cc (C::CClass): New.
	* gdb.cp/namespace1.cc: Update copyright.
	(C::OtherFileClass): New.
2004-01-14 16:54:43 +00:00
Michael Chastain
f40063a5ba 2004-01-13 Michael Chastain <mec.gnu@mindspring.com>
* gdb.cp/derivation.exp: Add XFAIL for bug with protected
	inheritance.  PR gdb/1498, PR gcc/13539.
2004-01-14 03:57:23 +00:00
Michael Chastain
56c97c6e25 2004-01-12 Michael Chastain <mec.gnu@mindspring.com>
* gdb.cp/member-ptr.cc: Add copyright notice.
2004-01-13 04:53:00 +00:00
Michael Chastain
a0644324db 2004-01-12 Michael Chastain <mec.gnu@mindspring.com>
* gdb.cp/member-ptr.exp: Use gdb_test, gdb_test_multiple.  Add
	some patterns for recent versions of gcc and hpacc.  Delete
	calls to setup_xfail for hppa*-*-*.  Delete redundant tests.
	Delete tests that access a NULL pointer-to-member-data.  This
	script is still disabled for gcc.
2004-01-13 04:36:04 +00:00
Michael Chastain
9939d2a823 2004-01-10 Michael Chastain <mec.gnu@mindspring.com>
* gdb.cp/classes.exp: Remove old "(obsolescent gcc or gdb)"
	decorations.
2004-01-11 09:40:37 +00:00
Michael Chastain
1ff8cadf84 2004-01-10 Michael Chastain <mec.gnu@mindspring.com>
* gdb.cp/virtfunc.exp: Remove old "(obsolescent gcc or gdb)"
	and "(aCC)" decorations.  Remove obsolete doco about old
	test results.
2004-01-11 08:14:49 +00:00
Michael Chastain
6fa9022e89 2004-01-09 Michael Chastain <mec.gnu@mindspring.com>
* gdb.cp/exception.exp: Fix typo in doco.
2004-01-10 00:03:17 +00:00
Michael Chastain
041ab88cf0 2004-01-09 Michael Chastain <mec.gnu@mindspring.com>
* gdb.cp/exception.cc: Change <iostream.h> to <iostream>.
	* gdb.cp/exception.exp: Use gdb test, gdb_test_multiple.
	Use gdb_compile.  Remove restriction on gcc.  Add some patterns
	for recent version of gdb.  Delete second half, which was a copy
	of the first half with different build flags.  This test is
	still disabled because it is still not ready for production.
2004-01-09 09:48:52 +00:00
Michael Chastain
e36d075ac4 2004-01-08 Michael Chastain <mec.gnu@mindspring.com>
* gdb.cp/exception.cc: Add copyright notice.
	* gdb.cp/exception.exp: Add a notice that this file is broken
	because of line number changes caused by addition of copyright
	notice.
2004-01-09 05:41:06 +00:00
Michael Chastain
42b190adc9 2004-01-08 Michael Chastain <mec.gnu@mindspring.com>
* gdb.cp/exception.cc: Renamed from gdb.hp/gdb.aCC/exception.cc.
	* gdb.cp/exception.exp: Renamed from gdb.hp/gdb.aCC/exception.exp.
2004-01-09 05:19:13 +00:00
Michael Chastain
8f25f06bfe 2004-01-08 Michael Chastain <mec.gnu@mindspring.com>
* gdb.cp/classes.exp: Accept gnu abi 2.
	* gdb.cp/derivation.exp: Likewise.
	* gdb.cp/overload.exp: Likewise.
	* gdb.cp/virtfunc.exp: Likewise.
2004-01-09 04:57:09 +00:00
Michael Chastain
77c26ae3f4 2004-01-07 Michael Chastain <mec.gnu@mindspring.com>
* gdb.cp/bs15503.cc: Include <iostream>, not <iostream.h>.
	* gdb.cp/bs15503.exp: Remove hp-only restriction.  Use modern
	boilerplate code for compiling and running the program under
	test.  Add some string method tests.
2004-01-08 09:41:48 +00:00
Michael Chastain
207574861e 2004-01-07 Michael Chastain <mec.gnu@mindspring.com>
* gdb.cp/bs15503.cc: Add copyright notice.
	* gdb.cp/bs15503.exp: Adjust line number.
2004-01-08 08:18:35 +00:00
Michael Chastain
0fd3b50324 2004-01-07 Michael Chastain <mec.gnu@mindspring.com>
* gdb.hp/gdb.defects/bs15503.exp: Renamed to gdb.cp/bs15503.exp.
	* gdb.hp/gdb.defects/bs15503.cc: Renamed to gdb.cp/bs15503.cc.
2004-01-08 08:00:55 +00:00
Michael Chastain
2789202a9c 2004-01-07 Michael Chastain <mec.gnu@mindspring.com>
* gdb.cp/cttiadd.c: Add a marker for gdb_get_line_number.
	* gdb.cp/ctti.exp: Use the marker instead of "next".
	With gcc, run further before bailing.
2004-01-08 06:35:15 +00:00
Michael Chastain
b862f14c31 2004-01-07 Michael Chastain <mec.gnu@mindspring.com>
* gdb.cp/cttiadd.cc: Add copyright notice.
	* gdb.cp/cttiadd1.cc: Likewise.
	* gdb.cp/cttiadd2.cc: Likewise.
	* gdb.cp/cttiadd3.cc: Likewise.
2004-01-08 06:19:15 +00:00
Michael Chastain
96da2469a0 2004-01-07 Michael Chastain <mec.gnu@mindspring.com>
* gdb.cp/ctti.exp: Partial rewrite.  Call gdb_compile properly.
	Use gdb_test, gdb_test_multiple.  Use floating-point values that
	have exact representations in IEEE-ish formats.
2004-01-08 02:13:57 +00:00
Michael Chastain
753ccc7a8b 2004-01-06 Michael Chastain <mec.gnu@mindspring.com>
* gdb.cp/namespace.exp: Call get_compiler_info with "c++".
2004-01-07 08:44:32 +00:00
Michael Chastain
f8d4bac4a7 2004-01-06 Michael Chastain <mec.gnu@mindspring.com>
* gdb.cp/m-static.exp: Compile one source file at a time.
	Delete unused call to get_compiler_info.
2004-01-06 19:21:59 +00:00
Michael Chastain
9b4e0f9493 2004-01-06 Michael Chastain <mec.gnu@mindspring.com>
* gdb.base/call-ar-st.exp: Delete explicit reference to ${binfile}.ci.
	* gdb.base/call-rt-st.exp: Likewise.
	* gdb.base/nodebug.exp: Likewise.
	* gdb.base/volatile.exp: Likewise.
	* gdb.cp/ref-types.exp: Likewise.
	* gdb.cp/templates.exp: Likewise.
2004-01-06 19:05:14 +00:00
Michael Chastain
06846494ce 2004-01-02 Michael Chastain <mec.gnu@mindspring.com>
* gdb.cp/local.exp: Accept gcc abi 2.
2004-01-03 01:46:09 +00:00
Michael Chastain
3b0cb2022c 2004-01-02 Michael Chastain <mec.gnu@mindspring.com>
* gdb.cp/templates.exp: Accept gcc abi 2.
2004-01-03 00:03:11 +00:00
Michael Chastain
0643ec3f3c 2004-01-02 Michael Chastain <mec.gnu@mindspring.com>
* lib/compiler.cc: Remove supports_template_debugging.
	* gdb.cp/templates.exp: Do not test supports_template_debugging.
2004-01-02 23:20:51 +00:00
Michael Chastain
d231d0b13f 2004-01-01 Michael Chastain <mec.gnu@mindspring.com>
* gdb.cp/namespace.exp: Accept gcc abi 2.
2004-01-02 06:38:01 +00:00
Michael Chastain
44ffb27cc2 2004-01-01 Michael Chastain <mec.gnu@mindspring.com>
* gdb.cp/method.exp: Accept gcc abi 2.
2004-01-02 06:17:19 +00:00
Michael Chastain
184ad4855f 2004-01-01 Michael Chastain <mec.gnu@mindspring.com>
* gdb.cp/classes.exp: Generate identical results as old version.
	* gdb.cp/derivation.exp: Likewise.
	* gdb.cp/overload.exp: Likewise.
	* gdb.cp/virtfunc.exp: Likewise.
2004-01-02 04:46:45 +00:00
Michael Chastain
116f09e7e9 2004-01-01 Michael Chastain <mec.gnu@mindspring.com>
* gdb.cp/virtfunc.exp: Modify some patterns to avoid a
	mysterious bug with sourceware version of expect.
2004-01-01 23:05:12 +00:00
Michael Chastain
b13797763f 2004-01-01 Michael Chastain <mec.gnu@mindspring.com>
* gdb.cp/overload.exp: Rewrite.  Clean up patterns to match
	current versions of gcc, including gcc abi 2.  Remove gratuitous
	restart of test program.  Use gdb_test_multiple and gdb_test for
	all tests.  Add patterns to xfail missing "const" in "const char *"
	and kfail PR gdb/1155.
2004-01-01 09:46:21 +00:00
Michael Chastain
6b7a4c0e17 2004-01-01 Michael Chastain <mec.gnu@mindspring.com>
* gdb.cp/derivation.exp: Rewrite.  Clean up patterns to match
	current versions of gcc, including gcc abi 2.  Remove gratuitous
	restart of test program.  Use gdb_test_multiple and gdb_test for
	all tests.  Add patterns to kfail PR gdb/1498.
2004-01-01 06:58:44 +00:00
Michael Chastain
51615d7251 2003-12-31 Michael Chastain <mec.gnu@mindspring.com>
* gdb.cp/virtfunc.exp: Rewrite.  Clean up patterns to match
	current versions of gcc, including gcc abi 2.  Use "breakpoint"
	and "continue" instead of restarting the target program.  Use
	gdb_test_multiple and gdb_test for all tests.
2004-01-01 02:30:59 +00:00
Michael Chastain
1cd3489fb3 2003-12-31 Michael Chastain <mec.gnu@mindspring.com>
* gdb.cp/classes.exp: Rewrite.  Clean up patterns to match
	current versions of gcc, including gcc abi 2.  Use "breakpoint"
	and "continue" instead of restarting the target program several
	times.  Use gdb_test_multiple and gdb_test for all tests.
2003-12-31 20:59:11 +00:00
Michael Chastain
374451f0e9 2003-12-05 Michael Chastain <mec.gnu@mindspring.com>
* gdb.cp/rtti.exp: Accept new wording of warning from
	cp_lookup_rtti_type.
2003-12-06 04:40:42 +00:00
Michael Chastain
c9f2c8a388 2003-11-25 Michael Chastain <mec.gnu@mindspring.com>
* gdb.cp/method.exp: Accept output of new demangler.
2003-11-25 17:39:07 +00:00
Michael Chastain
f4e8b6f343 2003-11-25 Michael Chastain <mec@gnu.mindspring.com>
* gdb/class2.exp: New file.
	* gdb/class2.cc: New file.
2003-11-25 15:01:31 +00:00
Michael Chastain
3c00b5704f 2003-11-25 Michael Chastain <mec.gnu@mindspring.com>
* gdb.cp/templates.exp (test_ptype_of_templates): Accept output
	of new demangler.
2003-11-25 14:34:37 +00:00
Michael Chastain
4d9eda44f5 2003-11-23 Michael Chastain <mec.gnu@mindspring.com>
Partial fix for PR testsuite/1456.
	* gdb.cp/ambiguous.exp: Replace reference to gcc_compiled with
	call to test_compiler_info.
	* gdb.cp/ctti.exp: Likewise.
	* gdb.cp/derivation.exp: Likewise.
	* gdb.cp/member-ptr.exp: Likewise.
	* gdb.cp/virtfunc.exp (test_virtual_calls): Remove unused
	reference to gcc_compiled.
2003-11-23 18:24:46 +00:00
Elena Zannoni
6a90a18e85 2003-11-07 Elena Zannoni <ezannoni@redhat.com>
* gdb.cp/annota3.exp: Make sure we can match 'Hardware watchpoint'
        as well as 'Watchpoint'.
2003-11-07 15:46:33 +00:00
Elena Zannoni
d7e4b55f6b 2003-11-06 Elena Zannoni <ezannoni@redhat.com>
* gdb.cp/annota2.exp: Make sure we can match 'Hardware watchpoint'
        as well as 'Watchpoint'.
2003-11-06 20:39:46 +00:00
David Carlton
79c2c32df4 2003-09-25 David Carlton <carlton@kealia.com>
* c-exp.y: Include cp-support.h.  Add qualified_type.
	(yylex): Delete nested type hack; add comments.
	* cp-namespace.c (cp_lookup_nested_type): New function.
	* cp-support.h: Declare cp_lookup_nested_type.
	* eval.c (evaluate_subexp_standard): Call value_aggregate_elt
	instead of value_struct_elt_for_reference.
	* valops.c: Include cp-support.h.
	(value_aggregate_elt): New function.
	(value_namespace_elt): Ditto.
	(value_struct_elt_for_reference): Make static.
	* value.h: Delete declaration of value_struct_elt_for_reference;
	add declaration for value_aggregate_elt.
	* Makefile.in (c-exp.tab.o): Depend on $(cp_support_h).
	(valops.o): Ditto.

2003-09-25  David Carlton  <carlton@kealia.com>

	* gdb.cp/namespace.exp: Tweak comments.  Add non-quoted versions
	of some print tests, where appropriate.  Add tests for C::D::cd,
	E::ce, F::cXfX, G::XgX.
	* gdb.cp/namespace.cc: Add XgX, cXfX, ce.
2003-09-25 16:39:39 +00:00
Michael Chastain
cdbf20f734 2003-09-17 Michael Chastain <mec@shout.net>
* gdb.cp/gdb1355.exp: New file.
	* gdb.cp/gdb1355.c: New file.
2003-09-18 00:04:39 +00:00
David Carlton
5c4e30cabe 2003-09-11 David Carlton <carlton@kealia.com>
* gdbtypes.h: Add TYPE_CODE_NAMESPACE.
	* gdbtypes.c (init_type): Handle TYPE_CODE_NAMESPACE.
	(recursive_dump_type): Ditto.
	* printcmd.c (print_formatted): Ditto.
	* typeprint.c (print_type_scalar): Ditto.
	* c-typeprint.c (c_type_print_varspec_prefix): Ditto.
	(c_type_print_varspec_suffix, c_type_print_base): Ditto.
	* cp-support.h: Declare cp_check_possible_namespace_symbols,
	maint_cplus_cmd_list.
	* cp-support.c: Make maint_cplus_cmd_list extern.
	* cp-namespace.c: Include objfiles.h, gdbtypes.h, dictionary.h,
	command.h.
	(lookup_symbol_file): Look in possible namespace blocks when
	appropriate.
	(initialize_namespace_symtab): New.
	(get_possible_namespace_block, free_namespace_block)
	(check_possible_namespace_symbols)
	(check_possible_namespace_symbols_loop)
	(check_one_possible_namespace_symbol)
	(lookup_possible_namespace_symbol, maintenance_cplus_namespace)
	(_initialize_cp_namespace): Ditto.
	* block.h: Declare allocate_block.
	* block.c (allocate_block): New.
	* jv-lang.c (get_java_class_symtab): Allocate blocks via
	allocate_block.
	* symfile.h: Update declaration of add_psymbol_to_list.
	* symfile.c (add_psymbol_to_list): Return the partial symbol in
	question.
	* dwarf2read.c (dwarf2_build_psymtabs_hard): Add argument to
	scan_partial_symbols_call.
	(scan_partial_symbols): Add NAMESPACE argument; update calls to
	helper functions.
	(add_partial_symbol): If necessary, scan mangled names for names
	of namespaces.
	(add_partial_namespace): Add NAMESPACE argument; generate partial
	symbols associated  to namespaces.
	(add_partial_enumeration): Add NAMESPACE argument.
	(new_symbol): Allow namespace syms.
	(read_namespace): Generate namespace syms.
	* objfiles.h: Add opaque declaration of struct symtab.
	(struct objfile): Add cp_namespace_symtab member.
	* objfiles.c (allocate_objfile): Set
	objfile->cp_namespace_symtab.
	* Makefile.in (cp-namespace.o): Depend on objfiles_h, gdbtypes_h,
	dictionary_h, command_h.

2003-09-11  David Carlton  <carlton@kealia.com>

	* gdb.c++/namespace.exp: Add tests for namespace types.
	* gdb.c++/maint.exp (test_help): Test 'help maint cp namespace'.
	(test_namespace): New.
2003-09-11 19:49:20 +00:00