[PATCH] Add constructor to stap_static_probe_ops

Tom Tromey tromey@adacore.com
Thu Dec 19 18:40:00 GMT 2019


PR build/24937 concerns an error given by the clang provided by a
particular version of macOS.  In particular, it reports

    error: default initialization of an object of const type 'const
    stap_static_probe_ops' without a user-provided default constructor

Although (at least according to sources I found online) this was
resolved as a bug in the standard, it seemed simple enough to work
around this.

Given that this is a trivial build fix, I think it should go on the
gdb 9 branch as well.

gdb/ChangeLog
2019-12-19  Tom Tromey  <tromey@adacore.com>

	PR build/24937:
	* stap-probe.c (class stap_static_probe_ops): Add constructor.

Change-Id: I18f180c17850f420e9b66afc67f9cb3d8dceb0b3
---
 gdb/ChangeLog    | 5 +++++
 gdb/stap-probe.c | 6 ++++++
 2 files changed, 11 insertions(+)

diff --git a/gdb/stap-probe.c b/gdb/stap-probe.c
index ba927790a5d..e162a3bbe1b 100644
--- a/gdb/stap-probe.c
+++ b/gdb/stap-probe.c
@@ -101,6 +101,12 @@ struct stap_probe_arg
 class stap_static_probe_ops : public static_probe_ops
 {
 public:
+  /* We need a user-provided constructor to placate some compilers.
+     See PR build/24937.  */
+  stap_static_probe_ops ()
+  {
+  }
+
   /* See probe.h.  */
   bool is_linespec (const char **linespecp) const override;
 
-- 
2.21.0



More information about the Gdb-patches mailing list