[Bug debug/28767] GCC should output DW_TAG_ptr_to_member for member functions
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=28767 Jakub Jelinek changed: What|Removed |Added Status|ASSIGNED|RESOLVED CC||jakub at gcc dot gnu.org Resolution|--- |FIXED --- Comment #7 from Jakub Jelinek --- Fixed for 7+.
[Bug debug/28767] GCC should output DW_TAG_ptr_to_member for member functions
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=28767 --- Comment #6 from Jakub Jelinek --- Author: jakub Date: Thu Nov 3 21:18:49 2016 New Revision: 241832 URL: https://gcc.gnu.org/viewcvs?rev=241832=gcc=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
[Bug debug/28767] GCC should output DW_TAG_ptr_to_member for member functions
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=28767 --- Comment #5 from Mark Wielaard mark at gcc dot gnu.org --- Some discussion of the patch in comment #4 can be found here: http://gcc.gnu.org/ml/gcc-patches/2011-05/threads.html#00225
[Bug debug/28767] GCC should output DW_TAG_ptr_to_member for member functions
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=28767 --- Comment #4 from Dodji Seketeli dodji at gcc dot gnu.org 2011-03-16 20:24:29 UTC --- Patch posted to http://gcc.gnu.org/ml/gcc-patches/2011-03/msg00949.html
[Bug debug/28767] GCC should output DW_TAG_ptr_to_member for member functions
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=28767 Dodji Seketeli dodji at gcc dot gnu.org changed: What|Removed |Added Status|NEW |ASSIGNED CC|dodji at gcc dot gnu.org| AssignedTo|unassigned at gcc dot |dodji at gcc dot gnu.org |gnu.org | --- Comment #3 from Dodji Seketeli dodji at gcc dot gnu.org 2010-12-16 22:02:10 UTC --- Mine.
[Bug debug/28767] GCC should output DW_TAG_ptr_to_member for member functions
--- Comment #2 from pinskia at gcc dot gnu dot org 2010-03-09 22:16 --- *** Bug 43312 has been marked as a duplicate of this bug. *** -- pinskia at gcc dot gnu dot org changed: What|Removed |Added CC||jimb at red-bean dot com http://gcc.gnu.org/bugzilla/show_bug.cgi?id=28767
[Bug debug/28767] GCC should output DW_TAG_ptr_to_member for member functions
-- pinskia at gcc dot gnu dot org changed: What|Removed |Added Status|UNCONFIRMED |NEW Ever Confirmed|0 |1 Last reconfirmed|-00-00 00:00:00 |2006-08-21 05:00:24 date|| http://gcc.gnu.org/bugzilla/show_bug.cgi?id=28767
[Bug debug/28767] GCC should output DW_TAG_ptr_to_member for member functions
--- Comment #1 from pinskia at gcc dot gnu dot org 2006-08-18 04:15 --- Confirmed, I am adding the keyword wrong-debug which almost true. -- pinskia at gcc dot gnu dot org changed: What|Removed |Added Keywords||wrong-debug http://gcc.gnu.org/bugzilla/show_bug.cgi?id=28767