(parse_breakpoint_sals): Ignore ObjC method
authorAdam Fedor <fedor@gnu.org>
Wed, 16 Oct 2002 23:25:32 +0000 (23:25 +0000)
committerAdam Fedor <fedor@gnu.org>
Wed, 16 Oct 2002 23:25:32 +0000 (23:25 +0000)
names when matching breakpoints in current file.

gdb/ChangeLog
gdb/breakpoint.c

index 4e708c700ab86e990a698e30d107db9fd9cf9afa..b36401baae96ad491df91a9cdbada584007a3b97 100644 (file)
@@ -1,3 +1,8 @@
+2002-10-16  Adam Fedor  <fedor@gnu.org>
+
+       * breakpoint.c (parse_breakpoint_sals): Ignore ObjC method
+       names when matching breakpoints in current file.
+
 2002-10-16  Kevin Buettner  <kevinb@redhat.com>
 
        * dwarf2read.c (dwarf2_invalid_pointer_size): New complaint.
index a77bff405a92a5ca5a3fe9e33f3c3c3a8f7d507f..c4d8e87d598ace060f788ef5cdc05fc75f77186d 100644 (file)
@@ -4618,13 +4618,16 @@ parse_breakpoint_sals (char **address,
       /* Force almost all breakpoints to be in terms of the
          current_source_symtab (which is decode_line_1's default).  This
          should produce the results we want almost all of the time while
-         leaving default_breakpoint_* alone.  */
+         leaving default_breakpoint_* alone.  
+         ObjC: However, don't match an Objective-C method name which
+         may have a '+' or '-' succeeded by a '[' */
         
       struct symtab_and_line cursal = get_current_source_symtab_and_line ();
                        
       if (default_breakpoint_valid
          && (!cursal.symtab
-             || (strchr ("+-", (*address)[0]) != NULL)))
+             || ((strchr ("+-", (*address)[0]) != NULL)
+                 && ((*address)[1] != '['))))
        *sals = decode_line_1 (address, 1, default_breakpoint_symtab,
                               default_breakpoint_line, addr_string);
       else