* Make bp_location usage const
@ 2007-11-14 17:10 Vladimir Prus
2007-11-14 17:34 ` Vladimir Prus
0 siblings, 1 reply; 3+ messages in thread
From: Vladimir Prus @ 2007-11-14 17:10 UTC (permalink / raw)
To: gdb-patches
[-- Attachment #1: Type: text/plain, Size: 236 bytes --]
Many parts of breakpoint.c make only read-only use
of breakpoint location list. However, it's somewhat
hard to gather from the code. This patch adds 'const'
qualifiers in a number of places to make this really
obvious. OK?
- Volodya
[-- Attachment #2: const_bp_location.diff --]
[-- Type: text/x-diff, Size: 3739 bytes --]
commit 27e15cd23711a14c73736baf532b7129098b32b0
Author: Vladimir Prus <vladimir@codesourcery.com>
Date: Wed Nov 14 20:07:38 2007 +0300
Apply const qualifier to some users of bp_location.
* breakpoint.h (struct bpstats): Make
the breakpoint_at field point at const bp_location.
* breakpoint.c (bpstat_alloc): Accept const
bp_location.
(breakpoint_here_p, breakpoint_inserted_here_p)
(software_breakpoint_inserted_here_p)
(breakpoint_thread_match, bpstat_stop_status): Use
const bp_location for iteration.
(print_it_typical, print_bp_stop_message): Use
const bp_location variable.
diff --git a/gdb/breakpoint.c b/gdb/breakpoint.c
index b67851d..d067405 100644
--- a/gdb/breakpoint.c
+++ b/gdb/breakpoint.c
@@ -109,7 +109,7 @@ static void breakpoints_info (char *, int);
static void breakpoint_1 (int, int);
-static bpstat bpstat_alloc (struct bp_location *, bpstat);
+static bpstat bpstat_alloc (const struct bp_location *, bpstat);
static int breakpoint_cond_eval (void *);
@@ -1733,7 +1733,7 @@ breakpoint_init_inferior (enum inf_context context)
enum breakpoint_here
breakpoint_here_p (CORE_ADDR pc)
{
- struct bp_location *bpt;
+ const struct bp_location *bpt;
int any_breakpoint_here = 0;
ALL_BP_LOCATIONS (bpt)
@@ -1768,7 +1768,7 @@ breakpoint_here_p (CORE_ADDR pc)
int
breakpoint_inserted_here_p (CORE_ADDR pc)
{
- struct bp_location *bpt;
+ const struct bp_location *bpt;
ALL_BP_LOCATIONS (bpt)
{
@@ -1801,7 +1801,7 @@ breakpoint_inserted_here_p (CORE_ADDR pc)
int
software_breakpoint_inserted_here_p (CORE_ADDR pc)
{
- struct bp_location *bpt;
+ const struct bp_location *bpt;
int any_breakpoint_here = 0;
ALL_BP_LOCATIONS (bpt)
@@ -1834,7 +1834,7 @@ software_breakpoint_inserted_here_p (CORE_ADDR pc)
int
breakpoint_thread_match (CORE_ADDR pc, ptid_t ptid)
{
- struct bp_location *bpt;
+ const struct bp_location *bpt;
int thread;
thread = pid_to_thread_id (ptid);
@@ -2159,7 +2159,7 @@ print_it_typical (bpstat bs)
{
struct cleanup *old_chain, *ui_out_chain;
struct breakpoint *b;
- struct bp_location *bl;
+ const struct bp_location *bl;
struct ui_stream *stb;
stb = ui_out_stream_new (uiout);
old_chain = make_cleanup_ui_out_stream_delete (stb);
@@ -2440,7 +2440,7 @@ print_bp_stop_message (bpstat bs)
case print_it_normal:
{
- struct bp_location *bl = bs->breakpoint_at;
+ const struct bp_location *bl = bs->breakpoint_at;
struct breakpoint *b = bl ? bl->owner : NULL;
/* Normal case. Call the breakpoint's print_it method, or
@@ -2520,7 +2520,7 @@ breakpoint_cond_eval (void *exp)
/* Allocate a new bpstat and chain it to the current one. */
static bpstat
-bpstat_alloc (struct bp_location *bl, bpstat cbs /* Current "bs" value */ )
+bpstat_alloc (const struct bp_location *bl, bpstat cbs /* Current "bs" value */ )
{
bpstat bs;
@@ -2749,7 +2749,7 @@ bpstat
bpstat_stop_status (CORE_ADDR bp_addr, ptid_t ptid)
{
struct breakpoint *b = NULL;
- struct bp_location *bl;
+ const struct bp_location *bl;
/* True if we've hit a breakpoint (as opposed to a watchpoint). */
int real_breakpoint = 0;
/* Root of the chain of bpstat's */
diff --git a/gdb/breakpoint.h b/gdb/breakpoint.h
index 7919d3f..f13d41b 100644
--- a/gdb/breakpoint.h
+++ b/gdb/breakpoint.h
@@ -642,7 +642,7 @@ struct bpstats
place, and a bpstat reflects the fact that both have been hit. */
bpstat next;
/* Breakpoint that we are at. */
- struct bp_location *breakpoint_at;
+ const struct bp_location *breakpoint_at;
/* Commands left to be done. */
struct command_line *commands;
/* Old value associated with a watchpoint. */
^ permalink raw reply [flat|nested] 3+ messages in thread* Re: Make bp_location usage const
2007-11-14 17:10 Make bp_location usage const Vladimir Prus
@ 2007-11-14 17:34 ` Vladimir Prus
2007-11-14 22:16 ` Jim Blandy
0 siblings, 1 reply; 3+ messages in thread
From: Vladimir Prus @ 2007-11-14 17:34 UTC (permalink / raw)
To: gdb-patches
[-- Attachment #1: Type: text/plain, Size: 344 bytes --]
Vladimir Prus wrote:
>
> Many parts of breakpoint.c make only read-only use
> of breakpoint location list. However, it's somewhat
> hard to gather from the code. This patch adds 'const'
> qualifiers in a number of places to make this really
> obvious. OK?
I've missed a couple of locations. Sorry, and here's
the updated patch.
- Volodya
[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: const_bp_location.diff --]
[-- Type: text/x-diff; name="const_bp_location.diff", Size: 4271 bytes --]
commit 997dde587a7d905bc862bce6af27ce2c3ab4484e
Author: Vladimir Prus <vladimir@codesourcery.com>
Date: Wed Nov 14 20:07:38 2007 +0300
Apply const qualifier to some users of bp_location.
* breakpoint.h (struct bpstats): Make
the breakpoint_at field point at const bp_location.
* breakpoint.c (bpstat_alloc): Accept const
bp_location.
(breakpoint_here_p, breakpoint_inserted_here_p)
(software_breakpoint_inserted_here_p)
(breakpoint_thread_match, bpstat_stop_status,
read_memory_nobpt, bpstat_have_active_hw_watchpoints): Use
const bp_location for iteration.
(print_it_typical, print_bp_stop_message): Use
const bp_location variable.
diff --git a/gdb/breakpoint.c b/gdb/breakpoint.c
index b67851d..e81ec20 100644
--- a/gdb/breakpoint.c
+++ b/gdb/breakpoint.c
@@ -109,7 +109,7 @@ static void breakpoints_info (char *, int);
static void breakpoint_1 (int, int);
-static bpstat bpstat_alloc (struct bp_location *, bpstat);
+static bpstat bpstat_alloc (const struct bp_location *, bpstat);
static int breakpoint_cond_eval (void *);
@@ -705,7 +705,7 @@ int
read_memory_nobpt (CORE_ADDR memaddr, gdb_byte *myaddr, unsigned len)
{
int status;
- struct bp_location *b;
+ const struct bp_location *b;
CORE_ADDR bp_addr = 0;
int bp_size = 0;
@@ -1733,7 +1733,7 @@ breakpoint_init_inferior (enum inf_context context)
enum breakpoint_here
breakpoint_here_p (CORE_ADDR pc)
{
- struct bp_location *bpt;
+ const struct bp_location *bpt;
int any_breakpoint_here = 0;
ALL_BP_LOCATIONS (bpt)
@@ -1768,7 +1768,7 @@ breakpoint_here_p (CORE_ADDR pc)
int
breakpoint_inserted_here_p (CORE_ADDR pc)
{
- struct bp_location *bpt;
+ const struct bp_location *bpt;
ALL_BP_LOCATIONS (bpt)
{
@@ -1801,7 +1801,7 @@ breakpoint_inserted_here_p (CORE_ADDR pc)
int
software_breakpoint_inserted_here_p (CORE_ADDR pc)
{
- struct bp_location *bpt;
+ const struct bp_location *bpt;
int any_breakpoint_here = 0;
ALL_BP_LOCATIONS (bpt)
@@ -1834,7 +1834,7 @@ software_breakpoint_inserted_here_p (CORE_ADDR pc)
int
breakpoint_thread_match (CORE_ADDR pc, ptid_t ptid)
{
- struct bp_location *bpt;
+ const struct bp_location *bpt;
int thread;
thread = pid_to_thread_id (ptid);
@@ -2159,7 +2159,7 @@ print_it_typical (bpstat bs)
{
struct cleanup *old_chain, *ui_out_chain;
struct breakpoint *b;
- struct bp_location *bl;
+ const struct bp_location *bl;
struct ui_stream *stb;
stb = ui_out_stream_new (uiout);
old_chain = make_cleanup_ui_out_stream_delete (stb);
@@ -2440,7 +2440,7 @@ print_bp_stop_message (bpstat bs)
case print_it_normal:
{
- struct bp_location *bl = bs->breakpoint_at;
+ const struct bp_location *bl = bs->breakpoint_at;
struct breakpoint *b = bl ? bl->owner : NULL;
/* Normal case. Call the breakpoint's print_it method, or
@@ -2520,7 +2520,7 @@ breakpoint_cond_eval (void *exp)
/* Allocate a new bpstat and chain it to the current one. */
static bpstat
-bpstat_alloc (struct bp_location *bl, bpstat cbs /* Current "bs" value */ )
+bpstat_alloc (const struct bp_location *bl, bpstat cbs /* Current "bs" value */ )
{
bpstat bs;
@@ -2749,7 +2749,7 @@ bpstat
bpstat_stop_status (CORE_ADDR bp_addr, ptid_t ptid)
{
struct breakpoint *b = NULL;
- struct bp_location *bl;
+ const struct bp_location *bl;
/* True if we've hit a breakpoint (as opposed to a watchpoint). */
int real_breakpoint = 0;
/* Root of the chain of bpstat's */
@@ -3336,7 +3336,7 @@ bpstat_should_step (void)
int
bpstat_have_active_hw_watchpoints (void)
{
- struct bp_location *bpt;
+ const struct bp_location *bpt;
ALL_BP_LOCATIONS (bpt)
if (breakpoint_enabled (bpt->owner)
&& bpt->inserted
diff --git a/gdb/breakpoint.h b/gdb/breakpoint.h
index 7919d3f..f13d41b 100644
--- a/gdb/breakpoint.h
+++ b/gdb/breakpoint.h
@@ -642,7 +642,7 @@ struct bpstats
place, and a bpstat reflects the fact that both have been hit. */
bpstat next;
/* Breakpoint that we are at. */
- struct bp_location *breakpoint_at;
+ const struct bp_location *breakpoint_at;
/* Commands left to be done. */
struct command_line *commands;
/* Old value associated with a watchpoint. */
^ permalink raw reply [flat|nested] 3+ messages in thread* Re: Make bp_location usage const
2007-11-14 17:34 ` Vladimir Prus
@ 2007-11-14 22:16 ` Jim Blandy
0 siblings, 0 replies; 3+ messages in thread
From: Jim Blandy @ 2007-11-14 22:16 UTC (permalink / raw)
To: Vladimir Prus; +Cc: gdb-patches
Vladimir Prus <ghost at cs.msu.su> writes:
>> Many parts of breakpoint.c make only read-only use
>> of breakpoint location list. However, it's somewhat
>> hard to gather from the code. This patch adds 'const'
>> qualifiers in a number of places to make this really
>> obvious. OK?
>
> I've missed a couple of locations. Sorry, and here's
> the updated patch.
Okay --- looks good.
^ permalink raw reply [flat|nested] 3+ messages in thread
end of thread, other threads:[~2007-11-14 22:16 UTC | newest]
Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2007-11-14 17:10 Make bp_location usage const Vladimir Prus
2007-11-14 17:34 ` Vladimir Prus
2007-11-14 22:16 ` Jim Blandy
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox