From: Tom Tromey <tromey@adacore.com>
To: Pedro Alves <palves@redhat.com>
Cc: Tom Tromey <tromey@adacore.com>, gdb-patches@sourceware.org
Subject: Re: [PATCH] Fix build failure on macOS
Date: Wed, 18 Dec 2019 16:35:00 -0000 [thread overview]
Message-ID: <87pngloala.fsf@tromey.com> (raw)
In-Reply-To: <69bd0545-37c4-9e4b-a3dd-7c7c4cf6e3e6@redhat.com> (Pedro Alves's message of "Wed, 18 Dec 2019 16:21:27 +0000")
>>>>> "Pedro" == Pedro Alves <palves@redhat.com> writes:
Pedro> I'd rather rename SIGNED to FIELD_SIGNED as well, for consistency.
Pedro> It no longer looks funny that way.
Here's v2.
Tom
commit 445716fd7ce9d59ec463047fb441b63a52544581
Author: Tom Tromey <tromey@adacore.com>
Date: Wed Dec 18 08:03:01 2019 -0700
Fix build failure on macOS
PR build/25250 notes that the gdb 9 pre-release fails to build on
macOS, due to a name clash between field_kind::STRING and the STRING
token in ada-exp.y. I am not sure (I couldn't reproduce this myself),
but presumably this is due to differences caused by the version of
bison in use there.
This patch works around the problem by renaming the field_kind
enumerator. I chose to rename this one because it is used in
relatively few places -- it's just an implementation detail of the
style code.
This version also renames field_kind::SIGNED for consistency.
Let me know what you think. I intend to check this in on the gdb 9
branch as well.
gdb/ChangeLog
2019-12-18 Tom Tromey <tromey@adacore.com>
PR build/25250:
* ui-out.c (ui_out::vmessage): Update.
* ui-out.h (enum class field_kind) <FIELD_STRING, FIELD_SIGNED>:
Rename.
(string_field): Update.
(signed_field): Update.
Change-Id: Iae9f36f1b793e22c61fee0de2ab2d508668ee7e4
diff --git a/gdb/ChangeLog b/gdb/ChangeLog
index 91b81f242c0..8c74bbc1e00 100644
--- a/gdb/ChangeLog
+++ b/gdb/ChangeLog
@@ -1,3 +1,12 @@
+2019-12-18 Tom Tromey <tromey@adacore.com>
+
+ PR build/25250:
+ * ui-out.c (ui_out::vmessage): Update.
+ * ui-out.h (enum class field_kind) <FIELD_STRING, FIELD_SIGNED>:
+ Rename.
+ (string_field): Update.
+ (signed_field): Update.
+
2019-12-17 Christian Biesinger <cbiesinger@google.com>
* bsd-kvm.c: Include gdbsupport/pathstuff.h.
diff --git a/gdb/ui-out.c b/gdb/ui-out.c
index 80845f4bcaa..2b3b7e4accb 100644
--- a/gdb/ui-out.c
+++ b/gdb/ui-out.c
@@ -730,13 +730,13 @@ ui_out::vmessage (const ui_file_style &in_style, const char *format,
base_field_s *bf = va_arg (args, base_field_s *);
switch (bf->kind)
{
- case field_kind::SIGNED:
+ case field_kind::FIELD_SIGNED:
{
auto *f = (signed_field_s *) bf;
field_signed (f->name, f->val);
}
break;
- case field_kind::STRING:
+ case field_kind::FIELD_STRING:
{
auto *f = (string_field_s *) bf;
field_string (f->name, f->str);
diff --git a/gdb/ui-out.h b/gdb/ui-out.h
index 5c96a7825be..c3ef8a57006 100644
--- a/gdb/ui-out.h
+++ b/gdb/ui-out.h
@@ -77,8 +77,11 @@ enum ui_out_type
/* The possible kinds of fields. */
enum class field_kind
{
- SIGNED,
- STRING,
+ /* "FIELD_STRING" needs has a funny name to avoid clashes with
+ tokens named "STRING". See PR build/25250. FIELD_SIGNED is
+ given a similar name for consistency. */
+ FIELD_SIGNED,
+ FIELD_STRING,
};
/* The base type of all fields that can be emitted using %pF. */
@@ -105,7 +108,7 @@ signed_field (const char *name, LONGEST val,
signed_field_s &&tmp = {})
{
tmp.name = name;
- tmp.kind = field_kind::SIGNED;
+ tmp.kind = field_kind::FIELD_SIGNED;
tmp.val = val;
return &tmp;
}
@@ -126,7 +129,7 @@ string_field (const char *name, const char *str,
string_field_s &&tmp = {})
{
tmp.name = name;
- tmp.kind = field_kind::STRING;
+ tmp.kind = field_kind::FIELD_STRING;
tmp.str = str;
return &tmp;
}
next prev parent reply other threads:[~2019-12-18 16:35 UTC|newest]
Thread overview: 8+ messages / expand[flat|nested] mbox.gz Atom feed top
2019-12-18 15:05 Tom Tromey
2019-12-18 16:21 ` Pedro Alves
2019-12-18 16:35 ` Tom Tromey [this message]
2019-12-18 16:38 ` Pedro Alves
2019-12-18 19:18 ` Christian Biesinger via gdb-patches
2019-12-19 18:11 ` Tom Tromey
2019-12-18 16:32 ` Simon Marchi
2019-12-18 16:37 ` Tom Tromey
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=87pngloala.fsf@tromey.com \
--to=tromey@adacore.com \
--cc=gdb-patches@sourceware.org \
--cc=palves@redhat.com \
/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