--- ./gdb/stabsread.c_orig	2016-02-08 06:45:31.000000000 -0600
+++ ./gdb/stabsread.c	2016-02-08 06:47:11.000000000 -0600
@@ -2462,6 +2462,8 @@
             (struct next_fnfield *) xmalloc (sizeof (struct next_fnfield));
          make_cleanup (xfree, new_sublist);
          memset (new_sublist, 0, sizeof (struct next_fnfield));
+         if (p < *pp)
+           return 0;
          new_sublist->fn_field.physname =  savestring (*pp, p - *pp);
 	  
 		 do
