From: Sergio Durigan Junior <sergiodj@redhat.com>
To: gdb-patches@sourceware.org
Cc: Joel Brobecker <brobecker@adacore.com>
Subject: [PATCH] Constify `struct expression' in operator_length
Date: Fri, 04 Jun 2010 21:19:00 -0000 [thread overview]
Message-ID: <201006041819.00286.sergiodj@redhat.com> (raw)
Hello,
Due to Joel's suggestion on
<http://sourceware.org/ml/gdb-patches/2010-05/msg00689.html>, I decided to
post this patch in order to constify the `struct expression' argument of the
operator_length class of functions.
Ok to apply?
--
Sergio Durigan Junior
Red Hat
2010-06-04 Sergio Durigan Junior <sergiodj@redhat.com>
* ada-lang.c (ada_operator_length): Constify `struct expression'.
* parse.c (operator_length): Likewise.
(operator_length_standard): Likewise.
* parser-defs.h (operator_length): Likewise.
(operator_length_standard): Likewise.
(struct exp_descriptor <operator_length>): Likewise.
diff --git a/gdb/ada-lang.c b/gdb/ada-lang.c
index be0c53b..1d4c38b 100644
--- a/gdb/ada-lang.c
+++ b/gdb/ada-lang.c
@@ -11084,7 +11084,8 @@ ada_decode_assert_location (char *args, char **addr_string,
OP_DEFN (OP_DISCRETE_RANGE, 1, 2, 0)
static void
-ada_operator_length (struct expression *exp, int pc, int *oplenp, int *argsp)
+ada_operator_length (const struct expression *exp, int pc, int *oplenp,
+ int *argsp)
{
switch (exp->elts[pc - 1].opcode)
{
diff --git a/gdb/parse.c b/gdb/parse.c
index 1c8b350..c885c6a 100644
--- a/gdb/parse.c
+++ b/gdb/parse.c
@@ -791,7 +791,8 @@ length_of_subexp (struct expression *expr, int endpos)
operator takes. */
void
-operator_length (struct expression *expr, int endpos, int *oplenp, int *argsp)
+operator_length (const struct expression *expr, int endpos, int *oplenp,
+ int *argsp)
{
expr->language_defn->la_exp_desc->operator_length (expr, endpos,
oplenp, argsp);
@@ -800,7 +801,7 @@ operator_length (struct expression *expr, int endpos, int *oplenp, int *argsp)
/* Default value for operator_length in exp_descriptor vectors. */
void
-operator_length_standard (struct expression *expr, int endpos,
+operator_length_standard (const struct expression *expr, int endpos,
int *oplenp, int *argsp)
{
int oplen = 1;
diff --git a/gdb/parser-defs.h b/gdb/parser-defs.h
index 864f789..bb79ae1 100644
--- a/gdb/parser-defs.h
+++ b/gdb/parser-defs.h
@@ -188,9 +188,10 @@ extern int dump_subexp (struct expression *, struct ui_file *, int);
extern int dump_subexp_body_standard (struct expression *,
struct ui_file *, int);
-extern void operator_length (struct expression *, int, int *, int *);
+extern void operator_length (const struct expression *, int, int *, int *);
-extern void operator_length_standard (struct expression *, int, int *, int *);
+extern void operator_length_standard (const struct expression *, int, int *,
+ int *);
extern int operator_check_standard (struct expression *exp, int pos,
int (*objfile_func)
@@ -273,7 +274,7 @@ struct exp_descriptor
/* Returns number of exp_elements needed to represent an operator and
the number of subexpressions it takes. */
- void (*operator_length) (struct expression*, int, int*, int *);
+ void (*operator_length) (const struct expression*, int, int*, int *);
/* Call TYPE_FUNC and OBJFILE_FUNC for any TYPE and OBJFILE found being
referenced by the single operator of EXP at position POS. Operator
next reply other threads:[~2010-06-04 21:19 UTC|newest]
Thread overview: 3+ messages / expand[flat|nested] mbox.gz Atom feed top
2010-06-04 21:19 Sergio Durigan Junior [this message]
2010-06-04 21:32 ` Tom Tromey
2010-06-04 21:40 ` Sergio Durigan Junior
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=201006041819.00286.sergiodj@redhat.com \
--to=sergiodj@redhat.com \
--cc=brobecker@adacore.com \
--cc=gdb-patches@sourceware.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox