Fix typo in gdb.python/py-objfile.exp
[deliverable/binutils-gdb.git] / gdb / symtab.c
index 669393060c9176a8f96dd0967953da6c15dfc3fa..decc5a958ffada845924cb2dbdd285c2caeee4f2 100644 (file)
@@ -2030,7 +2030,7 @@ check_field (struct type *type, const char *name,
   int i;
 
   /* The type may be a stub.  */
-  CHECK_TYPEDEF (type);
+  type = check_typedef (type);
 
   for (i = TYPE_NFIELDS (type) - 1; i >= TYPE_N_BASECLASSES (type); i--)
     {
@@ -2133,7 +2133,7 @@ lookup_symbol_aux (const char *name, const struct block *block,
 
          /* I'm not really sure that type of this can ever
             be typedefed; just be safe.  */
-         CHECK_TYPEDEF (t);
+         t = check_typedef (t);
          if (TYPE_CODE (t) == TYPE_CODE_PTR
              || TYPE_CODE (t) == TYPE_CODE_REF)
            t = TYPE_TARGET_TYPE (t);
@@ -3605,7 +3605,9 @@ find_pc_line_pc_range (CORE_ADDR pc, CORE_ADDR *startptr, CORE_ADDR *endptr)
 /* Given a function symbol SYM, find the symtab and line for the start
    of the function.
    If the argument FUNFIRSTLINE is nonzero, we want the first line
-   of real code inside the function.  */
+   of real code inside the function.
+   This function should return SALs matching those from minsym_found,
+   otherwise false multiple-locations breakpoints could be placed.  */
 
 struct symtab_and_line
 find_function_start_sal (struct symbol *sym, int funfirstline)
@@ -3617,6 +3619,14 @@ find_function_start_sal (struct symbol *sym, int funfirstline)
   section = SYMBOL_OBJ_SECTION (symbol_objfile (sym), sym);
   sal = find_pc_sect_line (BLOCK_START (SYMBOL_BLOCK_VALUE (sym)), section, 0);
 
+  if (funfirstline && sal.symtab != NULL
+      && (COMPUNIT_LOCATIONS_VALID (SYMTAB_COMPUNIT (sal.symtab))
+         || SYMTAB_LANGUAGE (sal.symtab) == language_asm))
+    {
+      sal.pc = BLOCK_START (SYMBOL_BLOCK_VALUE (sym));
+      return sal;
+    }
+
   /* We always should have a line for the function start address.
      If we don't, something is odd.  Create a plain SAL refering
      just the PC and hope that skip_prologue_sal (if requested)
This page took 0.023322 seconds and 4 git commands to generate.