This is the mail archive of the gdb-prs@sourceware.org mailing list for the GDB 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]

[Bug symtab/13795] New: .gdb_index misses fortran calling conventionsetting?


http://sourceware.org/bugzilla/show_bug.cgi?id=13795

             Bug #: 13795
           Summary: .gdb_index misses fortran calling convention setting?
           Product: gdb
           Version: HEAD
            Status: NEW
          Severity: minor
          Priority: P2
         Component: symtab
        AssignedTo: unassigned@sourceware.org
        ReportedBy: dje@google.com
    Classification: Unclassified


Found this while reading the code.
Filing it so it's not forgotten.

read_partial_die has this:

        case DW_AT_calling_convention:
          /* DWARF doesn't provide a way to identify a program's source-level   
             entry point.  DW_AT_calling_convention attributes are only meant   
             to describe functions' calling conventions.                        

             However, because it's a necessary piece of information in          
             Fortran, and because DW_CC_program is the only piece of debugging  
             information whose definition refers to a 'main program' at all,    
             several compilers have begun marking Fortran main programs with    
             DW_CC_program --- even when those functions use the standard       
             calling conventions.                                               

             So until DWARF specifies a way to provide this information and     
             compilers pick up the new representation, we'll support this       
             practice.  */
          if (DW_UNSND (&attr) == DW_CC_program
              && cu->language == language_fortran)
            {
              set_main_name (part_die->name);

              /* As this DIE has a static linkage the name would be difficult   
                 to look up later.  */
              language_of_main = language_fortran;
            }
          break;

I couldn't see the corresponding support in .gdb_index handling.

-- 
Configure bugmail: http://sourceware.org/bugzilla/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.


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