Change type of struct complaints::series
Commit Message
Found while processing the C++ enum changes. It seems like series
should be of type enum complaint_series, instead of adding a cast.
If somebody could guide me a little bit, I think I could clean up the
comments around this. The comments on enum complaint_series and the
series field seem redundant and maybe out of date. Do the "case N" in
the comments refer to the enum values? If so they don't seem to match
the actual values.
gdb/ChangeLog:
* complaints.c (enum complaint_series): Add newlines.
(struct complaints) <series>: Change type to enum
complaint_series.
(symfile_complaint_hook): Use equivalent enum value
ISOLATED_MESSAGE instead of 0.
---
gdb/complaints.c | 7 +++++--
1 file changed, 5 insertions(+), 2 deletions(-)
Comments
On 08/05/2015 10:44 PM, Simon Marchi wrote:
> Found while processing the C++ enum changes. It seems like series
> should be of type enum complaint_series, instead of adding a cast.
>
> If somebody could guide me a little bit, I think I could clean up the
> comments around this. The comments on enum complaint_series and the
> series field seem redundant and maybe out of date. Do the "case N" in
> the comments refer to the enum values? If so they don't seem to match
> the actual values.
'git blame' is your friend. :-) Seems to me they do refer to
the enum values -- see b9caf505. That commit added the enum, and moved around
the "case N" comments. But, it also added a fourth state, and missed updating
the N numbers to account for it. E.g., "case 2: Subsequent message" is a typo
that should say "case 3". Definitely agreed that all these comments
are redundant.
>
> gdb/ChangeLog:
>
> * complaints.c (enum complaint_series): Add newlines.
> (struct complaints) <series>: Change type to enum
> complaint_series.
> (symfile_complaint_hook): Use equivalent enum value
> ISOLATED_MESSAGE instead of 0.
This is OK.
Thanks,
Pedro Alves
@@ -34,11 +34,14 @@ extern void _initialize_complaints (void);
enum complaint_series {
/* Isolated self explanatory message. */
ISOLATED_MESSAGE,
+
/* First message of a series, includes an explanation. */
FIRST_MESSAGE,
+
/* First message of a series, but does not need to include any sort
of explanation. */
SHORT_FIRST_MESSAGE,
+
/* Subsequent message of a series that needs no explanation (the
user already knows we have a problem so we can just state our
piece). */
@@ -75,7 +78,7 @@ struct complaints
must start off with explanation. case 2: Subsequent message of a
series that needs no explanation (the user already knows we have
a problem so we can just state our piece). */
- int series;
+ enum complaint_series series;
/* The explanatory messages that should accompany the complaint.
NOTE: cagney/2002-08-14: In a desperate attempt at being vaguely
@@ -99,7 +102,7 @@ static struct explanation symfile_explanations[] = {
static struct complaints symfile_complaint_book = {
&complaint_sentinel,
- 0,
+ ISOLATED_MESSAGE,
symfile_explanations
};
struct complaints *symfile_complaints = &symfile_complaint_book;