+2011-04-17 Jan Kratochvil <jan.kratochvil@redhat.com>
+
+ * elfread.c (elf_symtab_read): Do not ignore .L symbols if they are
+ BSF_SYNTHETIC.
+
2011-04-17 Jan Kratochvil <jan.kratochvil@redhat.com>
Fix Python access to inlined frames.
else
ms_type = mst_text;
}
- else if ((sym->name[0] == '.' && sym->name[1] == 'L')
+ /* The BSF_SYNTHETIC check is there to omit ppc64 function
+ descriptors mistaken for static functions starting with 'L'.
+ */
+ else if ((sym->name[0] == '.' && sym->name[1] == 'L'
+ && (sym->flags & BSF_SYNTHETIC) == 0)
|| ((sym->flags & BSF_LOCAL)
&& sym->name[0] == '$'
&& sym->name[1] == 'L'))
+2011-04-17 Jan Kratochvil <jan.kratochvil@redhat.com>
+
+ * gdb.base/callfuncs.c (Lcallfunc, callfunc): New functions.
+ * gdb.base/callfuncs.exp (print callfunc (Lcallfunc, 5)): New test.
+
2011-04-17 Jan Kratochvil <jan.kratochvil@redhat.com>
Fix Python access to inlined frames.
t_structs_c(struct_val1);
return 0 ;
}
+
+static int
+Lcallfunc (int arg)
+{
+ return arg + 1;
+}
+
+int
+callfunc (int (*func) (int value), int value)
+{
+ return Lcallfunc (0) * 0 + func (value) * 2;
+}
gdb_test {set $sp = $old_sp}
}
+
+# Test function descriptor resolution - the separate debug info .opd section
+# handling vs. local labels `.L'... as `Lcallfunc' starts with `L'.
+
+gdb_test "print callfunc (Lcallfunc, 5)" " = 12"