public inbox for gcc-bugs@sourceware.org
help / color / mirror / Atom feed
* [Bug debug/56563] New: no debuginfo for "explicit" operator
@ 2013-03-07 15:58 tromey at gcc dot gnu.org
  2014-02-19 12:22 ` [Bug debug/56563] " mark at gcc dot gnu.org
                   ` (2 more replies)
  0 siblings, 3 replies; 4+ messages in thread
From: tromey at gcc dot gnu.org @ 2013-03-07 15:58 UTC (permalink / raw)
  To: gcc-bugs


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=56563

             Bug #: 56563
           Summary: no debuginfo for "explicit" operator
    Classification: Unclassified
           Product: gcc
           Version: unknown
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: debug
        AssignedTo: unassigned@gcc.gnu.org
        ReportedBy: tromey@gcc.gnu.org


Consider this:

struct q {
  explicit operator int();
};

q::operator int() { return 23; }


compile with -g and examine the debuginfo with readelf.
There is no mention of the "explicit":

 <2><37>: Abbrev Number: 3 (DW_TAG_subprogram)
    <38>   DW_AT_external    : 1        
    <38>   DW_AT_name        : (indirect string, offset: 0x0): operator int     
    <3c>   DW_AT_decl_file   : 1        
    <3d>   DW_AT_decl_line   : 2        
    <3e>   DW_AT_linkage_name: (indirect string, offset: 0x12): _ZN1qcviEv      
    <42>   DW_AT_type        : <0x51>   
    <46>   DW_AT_declaration : 1        
    <46>   DW_AT_object_pointer: <0x4a> 
[...]
 <1><5e>: Abbrev Number: 7 (DW_TAG_subprogram)
    <5f>   DW_AT_specification: <0x37>  
    <63>   DW_AT_decl_line   : 5        
    <64>   DW_AT_low_pc      : 0x0      
    <6c>   DW_AT_high_pc     : 0xf 0x0  
    <74>   DW_AT_frame_base  : 1 byte block: 9c         (DW_OP_call_frame_cfa)
    <76>   DW_AT_object_pointer: <0x7e> 
    <7a>   DW_AT_GNU_all_call_sites: 1  
    <7a>   DW_AT_sibling     : <0x8b>   


This prevents gdb from properly implementing this part of
c++ expressions.


^ permalink raw reply	[flat|nested] 4+ messages in thread

* [Bug debug/56563] no debuginfo for "explicit" operator
  2013-03-07 15:58 [Bug debug/56563] New: no debuginfo for "explicit" operator tromey at gcc dot gnu.org
@ 2014-02-19 12:22 ` mark at gcc dot gnu.org
  2014-02-19 15:41 ` mark at gcc dot gnu.org
  2014-02-19 18:13 ` jakub at gcc dot gnu.org
  2 siblings, 0 replies; 4+ messages in thread
From: mark at gcc dot gnu.org @ 2014-02-19 12:22 UTC (permalink / raw)
  To: gcc-bugs

http://gcc.gnu.org/bugzilla/show_bug.cgi?id=56563

Mark Wielaard <mark at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |mark at gcc dot gnu.org

--- Comment #1 from Mark Wielaard <mark at gcc dot gnu.org> ---
PR debug/37959 did add support for explicit constructors by adding a
LANG_HOOKS_FUNCTION_DECL_EXPLICIT_P that dwarf2out uses to tag functions with
DW_AT_explicit attributes.


^ permalink raw reply	[flat|nested] 4+ messages in thread

* [Bug debug/56563] no debuginfo for "explicit" operator
  2013-03-07 15:58 [Bug debug/56563] New: no debuginfo for "explicit" operator tromey at gcc dot gnu.org
  2014-02-19 12:22 ` [Bug debug/56563] " mark at gcc dot gnu.org
@ 2014-02-19 15:41 ` mark at gcc dot gnu.org
  2014-02-19 18:13 ` jakub at gcc dot gnu.org
  2 siblings, 0 replies; 4+ messages in thread
From: mark at gcc dot gnu.org @ 2014-02-19 15:41 UTC (permalink / raw)
  To: gcc-bugs

http://gcc.gnu.org/bugzilla/show_bug.cgi?id=56563

--- Comment #2 from Mark Wielaard <mark at gcc dot gnu.org> ---
Jakub proposed a patch:
http://gcc.gnu.org/ml/gcc-patches/2014-02/msg01166.html


^ permalink raw reply	[flat|nested] 4+ messages in thread

* [Bug debug/56563] no debuginfo for "explicit" operator
  2013-03-07 15:58 [Bug debug/56563] New: no debuginfo for "explicit" operator tromey at gcc dot gnu.org
  2014-02-19 12:22 ` [Bug debug/56563] " mark at gcc dot gnu.org
  2014-02-19 15:41 ` mark at gcc dot gnu.org
@ 2014-02-19 18:13 ` jakub at gcc dot gnu.org
  2 siblings, 0 replies; 4+ messages in thread
From: jakub at gcc dot gnu.org @ 2014-02-19 18:13 UTC (permalink / raw)
  To: gcc-bugs

http://gcc.gnu.org/bugzilla/show_bug.cgi?id=56563

--- Comment #3 from Jakub Jelinek <jakub at gcc dot gnu.org> ---
Author: jakub
Date: Wed Feb 19 18:12:31 2014
New Revision: 207915

URL: http://gcc.gnu.org/viewcvs?rev=207915&root=gcc&view=rev
Log:
    PR debug/56563
    * cp-objcp-common.c (cp_function_decl_explicit_p): Remove
    FUNCTION_FIRST_USER_PARMTYPE (decl) != void_list_node check.

Modified:
    trunk/gcc/cp/ChangeLog
    trunk/gcc/cp/cp-objcp-common.c


^ permalink raw reply	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2014-02-19 18:13 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2013-03-07 15:58 [Bug debug/56563] New: no debuginfo for "explicit" operator tromey at gcc dot gnu.org
2014-02-19 12:22 ` [Bug debug/56563] " mark at gcc dot gnu.org
2014-02-19 15:41 ` mark at gcc dot gnu.org
2014-02-19 18:13 ` jakub at gcc dot gnu.org

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).