Add comments regarding breakpoint_re_set
[deliverable/binutils-gdb.git] / gdb / breakpoint.c
index 90e01eec266a0e351f9171cc7c95f64126a0b9c1..e64f5cca81a56f07fc9b959ce49931e0b554e2cd 100644 (file)
@@ -1535,7 +1535,11 @@ break_command_1 (arg, tempflag, from_tty)
       b->number = breakpoint_count;
       b->type = bp_breakpoint;
       b->cond = cond;
-      
+
+      /* FIXME: We should add the filename if this is a static function
+        and probably if it is a line number (the line numbers could
+        have changed when we re-read symbols; possibly better to disable
+        the breakpoint in that case).  */
       if (addr_start)
        b->addr_string = savestring (addr_start, addr_end - addr_start);
       if (cond_start)
@@ -2239,6 +2243,15 @@ breakpoint_re_set_one (bint)
 
     case bp_watchpoint:
       innermost_block = NULL;
+      /* The issue arises of what context to evaluate this in.  The same
+        one as when it was set, but what does that mean when symbols have
+        been re-read?  We could save the filename and functionname, but
+        if the context is more local than that, the best we could do would
+        be something like how many levels deep and which index at that
+        particular level, but that's going to be less stable than filenames
+        or functionnames.  */
+      /* So for now, just use a global context.  */
+      /* FIXME, use catch_errors.  */
       b->exp = parse_expression (b->exp_string);
       b->exp_valid_block = innermost_block;
       b->val = evaluate_expression (b->exp);
This page took 0.023157 seconds and 4 git commands to generate.