aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAndrew Burgess <andrew.burgess@embecosm.com>2020-10-20 13:41:18 +0100
committerAndrew Burgess <andrew.burgess@embecosm.com>2020-12-23 20:53:14 +0000
commit76ca72bc5b72ac0bbab239bda41cd61f6cb7d051 (patch)
treeb2d64c1c54b6af4d5d0d8dcf2bcc64e8a4c000be
parentc5ee319e6cc7a02d35871896e8205e1f782fbc00 (diff)
downloadgdb-76ca72bc5b72ac0bbab239bda41cd61f6cb7d051.zip
gdb-76ca72bc5b72ac0bbab239bda41cd61f6cb7d051.tar.gz
gdb-76ca72bc5b72ac0bbab239bda41cd61f6cb7d051.tar.bz2
gdb: remove LA_EMIT_CHAR macro
Now that every use of the LA_EMIT_CHAR macro is within a language_defn member function we can simply call the emitchar member function directly instead of using the LA_EMIT_CHAR macro. If we are ever inside a language object, for example, cplus_language, while current_language points at something other than cplus_language then this commit will result in a change in behaviour. However, I believe if we did have such a difference then this would be a bug in GDB. AS such I'm going to claim there _should_ be no user visible changes from this commit. gdb/ChangeLog: * c-lang.c (language_defn::printchar): Call emitchar, not LA_EMIT_CHAR. * f-lang.h (f_language::printchar): Likewise. * language.h (LA_EMIT_CHAR): Delete macro. * rust-lang.c (rust_language::printchar): Call emitchar, not LA_EMIT_CHAR.
-rw-r--r--gdb/ChangeLog9
-rw-r--r--gdb/c-lang.c2
-rw-r--r--gdb/f-lang.h2
-rw-r--r--gdb/language.h2
-rw-r--r--gdb/rust-lang.c2
5 files changed, 12 insertions, 5 deletions
diff --git a/gdb/ChangeLog b/gdb/ChangeLog
index 7c52f9b..d751b0d 100644
--- a/gdb/ChangeLog
+++ b/gdb/ChangeLog
@@ -1,5 +1,14 @@
2020-12-23 Andrew Burgess <andrew.burgess@embecosm.com>
+ * c-lang.c (language_defn::printchar): Call emitchar, not
+ LA_EMIT_CHAR.
+ * f-lang.h (f_language::printchar): Likewise.
+ * language.h (LA_EMIT_CHAR): Delete macro.
+ * rust-lang.c (rust_language::printchar): Call emitchar, not
+ LA_EMIT_CHAR.
+
+2020-12-23 Andrew Burgess <andrew.burgess@embecosm.com>
+
* c-lang.c (c_printchar): Rename to...
(language_defn::printchar): ...this.
* c-lang.h (c_printchar): Delete declaration.
diff --git a/gdb/c-lang.c b/gdb/c-lang.c
index a028d10..c840761 100644
--- a/gdb/c-lang.c
+++ b/gdb/c-lang.c
@@ -178,7 +178,7 @@ language_defn::printchar (int c, struct type *type,
}
fputc_filtered ('\'', stream);
- LA_EMIT_CHAR (c, type, stream, '\'');
+ emitchar (c, type, stream, '\'');
fputc_filtered ('\'', stream);
}
diff --git a/gdb/f-lang.h b/gdb/f-lang.h
index 351f219..51ee6f6 100644
--- a/gdb/f-lang.h
+++ b/gdb/f-lang.h
@@ -155,7 +155,7 @@ public:
struct ui_file *stream) const override
{
fputs_filtered ("'", stream);
- LA_EMIT_CHAR (ch, chtype, stream, '\'');
+ emitchar (ch, chtype, stream, '\'');
fputs_filtered ("'", stream);
}
diff --git a/gdb/language.h b/gdb/language.h
index 73ddd24..af7bd4f 100644
--- a/gdb/language.h
+++ b/gdb/language.h
@@ -775,8 +775,6 @@ extern enum language set_language (enum language);
#define LA_PRINT_STRING(stream, elttype, string, length, encoding, force_ellipses, options) \
(current_language->printstr (stream, elttype, string, length, \
encoding, force_ellipses,options))
-#define LA_EMIT_CHAR(ch, type, stream, quoter) \
- (current_language->emitchar (ch, type, stream, quoter))
/* Test a character to decide whether it can be printed in literal form
or needs to be printed in another representation. For example,
diff --git a/gdb/rust-lang.c b/gdb/rust-lang.c
index 3a9a4e7..96ae075 100644
--- a/gdb/rust-lang.c
+++ b/gdb/rust-lang.c
@@ -2054,7 +2054,7 @@ public:
struct ui_file *stream) const override
{
fputs_filtered ("'", stream);
- LA_EMIT_CHAR (ch, chtype, stream, '\'');
+ emitchar (ch, chtype, stream, '\'');
fputs_filtered ("'", stream);
}