This is the mail archive of the gcc-cvs@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

r241832 - in /trunk/gcc: ChangeLog cp/ChangeLog...


Author: jakub
Date: Thu Nov  3 21:18:49 2016
New Revision: 241832

URL: https://gcc.gnu.org/viewcvs?rev=241832&root=gcc&view=rev
Log:
	PR debug/28767
	PR debug/56974
	* langhooks.h (struct lang_hooks_for_types): Add type_dwarf_attribute
	langhook.
	* langhooks.c (lhd_type_dwarf_attribute): New function.
	* langhooks-def.h (lhd_type_dwarf_attribute): Declare.
	(LANG_HOOKS_TYPE_DWARF_ATTRIBUTE): Define.
	(LANG_HOOKS_FOR_TYPES_INITIALIZER): Add
	LANG_HOOKS_TYPE_DWARF_ATTRIBUTE.
	(check_qualified_type, check_aligned_type): Call it.
	* dwarf2out.c (modified_type_die): Don't use type_main_variant
	for FUNCTION_TYPE or METHOD_TYPE, instead walk over variants with
	check_base_type and check_lang_type.
	(gen_ptr_to_mbr_type_die): If lookup_type_die is already non-NULL,
	return early.  For pointer-to-data-member add DW_AT_use_location
	attribute.
	(gen_subroutine_type_die): Add DW_AT_{,rvalue_}reference attribute
	if needed.
	(gen_type_die_with_usage): Don't use type_main_variant
	for FUNCTION_TYPE or METHOD_TYPE, instead walk over variants with
	check_base_type and check_lang_type.  Formatting fixes. Call
	get_debug_type langhook.
cp/
	* tree.c (cp_check_qualified_type): Use check_base_type and
	TYPE_QUALS comparison instead of check_qualified_type.
	(cxx_type_hash_eq): Return false if type_memfn_rqual don't match.
	* cp-objcp-common.c (cp_get_debug_type): New function.
	(cp_decl_dwarf_attribute): Don't handle types here.
	(cp_type_dwarf_attribute): New function.
	* cp-objcp-common.h (cp_get_debug_type, cp_type_dwarf_attribute):
	Declare.
	(LANG_HOOKS_GET_DEBUG_TYPE, LANG_HOOKS_TYPE_DWARF_ATTRIBUTE):
	Define.
testsuite/
	* g++.dg/debug/dwarf2/ptrdmem-1.C: New test.
	* g++.dg/debug/dwarf2/ref-3.C: New test.
	* g++.dg/debug/dwarf2/ref-4.C: New test.
	* g++.dg/debug/dwarf2/refqual-1.C: New test.
	* g++.dg/debug/dwarf2/refqual-2.C: New test.

Added:
    trunk/gcc/testsuite/g++.dg/debug/dwarf2/ptrdmem-1.C
    trunk/gcc/testsuite/g++.dg/debug/dwarf2/ref-3.C
    trunk/gcc/testsuite/g++.dg/debug/dwarf2/ref-4.C
    trunk/gcc/testsuite/g++.dg/debug/dwarf2/refqual-1.C
    trunk/gcc/testsuite/g++.dg/debug/dwarf2/refqual-2.C
Modified:
    trunk/gcc/ChangeLog
    trunk/gcc/cp/ChangeLog
    trunk/gcc/cp/cp-objcp-common.c
    trunk/gcc/cp/cp-objcp-common.h
    trunk/gcc/dwarf2out.c
    trunk/gcc/langhooks-def.h
    trunk/gcc/langhooks.c
    trunk/gcc/langhooks.h
    trunk/gcc/testsuite/ChangeLog


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]