Use DISABLE_COPY_AND_ASSIGN
authorYao Qi <yao.qi@linaro.org>
Tue, 19 Sep 2017 09:10:03 +0000 (10:10 +0100)
committerYao Qi <yao.qi@linaro.org>
Tue, 19 Sep 2017 09:10:03 +0000 (10:10 +0100)
We have many classes that copy cotr and assignment operator are deleted,
so this patch replaces these existing mechanical code with macro
DISABLE_COPY_AND_ASSIGN.

gdb:

2017-09-19  Yao Qi  <yao.qi@linaro.org>

* annotate.h (struct annotate_arg_emitter): Use
DISABLE_COPY_AND_ASSIGN.
* common/refcounted-object.h (refcounted_object): Likewise.
* completer.h (struct completion_result): Likewise.
* dwarf2read.c (struct dwarf2_per_objfile): Likewise.
* filename-seen-cache.h (filename_seen_cache): Likewise.
* gdbcore.h (thread_section_name): Likewise.
* gdb_regex.h (compiled_regex): Likewise.
* gdbthread.h (scoped_restore_current_thread): Likewise.
* inferior.h (scoped_restore_current_inferior): Likewise.
* jit.c (jit_reader): Likewise.
* linespec.h (struct linespec_result): Likewise.
* mi/mi-parse.h (struct mi_parse): Likewise.
* nat/fork-inferior.c (execv_argv): Likewise.
* progspace.h (scoped_restore_current_program_space): Likewise.
* python/python-internal.h (class gdbpy_enter): Likewise.
* regcache.h (regcache): Likewise.
* target-descriptions.c (struct tdesc_reg): Likewise.
(struct tdesc_type): Likewise.
(struct tdesc_feature): Likewise.
* ui-out.h (ui_out_emit_type): Likewise.

19 files changed:
gdb/ChangeLog
gdb/annotate.h
gdb/common/refcounted-object.h
gdb/completer.h
gdb/dwarf2read.c
gdb/filename-seen-cache.h
gdb/gdb_regex.h
gdb/gdbcore.h
gdb/gdbthread.h
gdb/inferior.h
gdb/jit.c
gdb/linespec.h
gdb/mi/mi-parse.h
gdb/nat/fork-inferior.c
gdb/progspace.h
gdb/python/python-internal.h
gdb/regcache.h
gdb/target-descriptions.c
gdb/ui-out.h

index eb03722f1363f56f84ea0f726379712b53f6f043..ab982ab5874f636ba20bf83f56b5ad6e684346ed 100644 (file)
@@ -1,3 +1,27 @@
+2017-09-19  Yao Qi  <yao.qi@linaro.org>
+
+       * annotate.h (struct annotate_arg_emitter): Use
+       DISABLE_COPY_AND_ASSIGN.
+       * common/refcounted-object.h (refcounted_object): Likewise.
+       * completer.h (struct completion_result): Likewise.
+       * dwarf2read.c (struct dwarf2_per_objfile): Likewise.
+       * filename-seen-cache.h (filename_seen_cache): Likewise.
+       * gdbcore.h (thread_section_name): Likewise.
+       * gdb_regex.h (compiled_regex): Likewise.
+       * gdbthread.h (scoped_restore_current_thread): Likewise.
+       * inferior.h (scoped_restore_current_inferior): Likewise.
+       * jit.c (jit_reader): Likewise.
+       * linespec.h (struct linespec_result): Likewise.
+       * mi/mi-parse.h (struct mi_parse): Likewise.
+       * nat/fork-inferior.c (execv_argv): Likewise.
+       * progspace.h (scoped_restore_current_program_space): Likewise.
+       * python/python-internal.h (class gdbpy_enter): Likewise.
+       * regcache.h (regcache): Likewise.
+       * target-descriptions.c (struct tdesc_reg): Likewise.
+       (struct tdesc_type): Likewise.
+       (struct tdesc_feature): Likewise.
+       * ui-out.h (ui_out_emit_type): Likewise.
+
 2017-09-18  Simon Marchi  <simon.marchi@ericsson.com>
 
        * dwarf2expr.c (dwarf_expr_context::execute_stack_op): Remove
index 7161689b390abb8efe992253476f1c7f06a929a6..8a9a64147df4d5306f1eca68013a657664bdaa07 100644 (file)
@@ -81,8 +81,7 @@ struct annotate_arg_emitter
   annotate_arg_emitter () { annotate_arg_begin (); }
   ~annotate_arg_emitter () { annotate_arg_end (); }
 
-  annotate_arg_emitter (const annotate_arg_emitter &) = delete;
-  annotate_arg_emitter &operator= (const annotate_arg_emitter &) = delete;
+  DISABLE_COPY_AND_ASSIGN (annotate_arg_emitter);
 };
 
 extern void annotate_source (char *, int, int, int,
index 9d0ac10e76bd3997aec37a35a54f432fa6afd1df..97116803238baa964bef46fad6270a6ac30290bf 100644 (file)
@@ -45,9 +45,7 @@ public:
   int refcount () const { return m_refcount; }
 
 private:
-  /* Disable copy.  */
-  refcounted_object (const refcounted_object &) = delete;
-  refcounted_object &operator=(const refcounted_object &) = delete;
+  DISABLE_COPY_AND_ASSIGN (refcounted_object);
 
   /* The reference count.  */
   int m_refcount = 0;
index f68c6dcd7121c98a3513feb5b0d653042cf52b6a..82a994c8b3529261af3ab9d40b16f384320a5a1c 100644 (file)
@@ -85,9 +85,7 @@ struct completion_result
   /* Destroy a result.  */
   ~completion_result ();
 
-  /* Disable copying, since we don't need it.  */
-  completion_result (const completion_result &rhs) = delete;
-  void operator= (const completion_result &rhs) = delete;
+  DISABLE_COPY_AND_ASSIGN (completion_result);
 
   /* Move a result.  */
   completion_result (completion_result &&rhs);
@@ -146,9 +144,7 @@ public:
   completion_tracker ();
   ~completion_tracker ();
 
-  /* Disable copy.  */
-  completion_tracker (const completion_tracker &rhs) = delete;
-  void operator= (const completion_tracker &rhs) = delete;
+  DISABLE_COPY_AND_ASSIGN (completion_tracker);
 
   /* Add the completion NAME to the list of generated completions if
      it is not there already.  If too many completions were already
index d97ef922662ef6abdf0a4ce9b5f628cfe2a31c7f..b1914cf8765df75a4674e9474104e2fc7c2a0776 100644 (file)
@@ -232,9 +232,7 @@ struct dwarf2_per_objfile
 
   ~dwarf2_per_objfile ();
 
-  /* Disable copy.  */
-  dwarf2_per_objfile (const dwarf2_per_objfile &) = delete;
-  void operator= (const dwarf2_per_objfile &) = delete;
+  DISABLE_COPY_AND_ASSIGN (dwarf2_per_objfile);
 
   /* Free all cached compilation units.  */
   void free_cached_comp_units ();
index dd9cf7a8d7974fef1fba4aa6fba1a49759427697..549effd3519a8664c3c60d28ef0b2b23edeffbb1 100644 (file)
@@ -28,9 +28,7 @@ public:
   filename_seen_cache ();
   ~filename_seen_cache ();
 
-  /* Disable copy.  */
-  filename_seen_cache (const filename_seen_cache &) = delete;
-  void operator= (const filename_seen_cache &) = delete;
+  DISABLE_COPY_AND_ASSIGN (filename_seen_cache);
 
   /* Empty the cache, but do not delete it.  */
   void clear ();
index f62f81d36644f03967f340a06c87ddfcbfe162f6..1ef948ed63a2a682313afbabf29abab74b181bf8 100644 (file)
@@ -43,9 +43,7 @@ public:
 
   ~compiled_regex ();
 
-  /* Disable copy.  */
-  compiled_regex (const compiled_regex&) = delete;
-  void operator= (const compiled_regex&) = delete;
+  DISABLE_COPY_AND_ASSIGN (compiled_regex);
 
   /* Wrapper around ::regexec.  */
   int exec (const char *string,
index a25a2312ac9dd7d9e91fe58f5af4a4320753fda1..5d4e36e0c13501ee1b4d05990c923c6703a9173b 100644 (file)
@@ -258,9 +258,7 @@ public:
   const char *c_str () const
   { return m_section_name; }
 
-  /* Disable copy.  */
-  thread_section_name (const thread_section_name &) = delete;
-  void operator= (const thread_section_name &) = delete;
+  DISABLE_COPY_AND_ASSIGN (thread_section_name);
 
 private:
   /* Either a pointer into M_STORAGE, or a pointer to the name passed
index 046bf95cf6fc7e07460dc60aa9c236d025539736..fe7acc2c70009af8608d7bb4189250332036eb65 100644 (file)
@@ -597,11 +597,7 @@ public:
   scoped_restore_current_thread ();
   ~scoped_restore_current_thread ();
 
-  /* Disable copy.  */
-  scoped_restore_current_thread
-    (const scoped_restore_current_thread &) = delete;
-  void operator=
-    (const scoped_restore_current_thread &) = delete;
+  DISABLE_COPY_AND_ASSIGN (scoped_restore_current_thread);
 
 private:
   thread_info *m_thread;
index 6d020f73c413f83c6a241f5e04b0c73298f55817..7f2d53e5b3a6fe5817f6f13ee884a48b21473487 100644 (file)
@@ -527,11 +527,7 @@ public:
   ~scoped_restore_current_inferior ()
   { set_current_inferior (m_saved_inf); }
 
-  /* Disable copy.  */
-  scoped_restore_current_inferior
-    (const scoped_restore_current_inferior &) = delete;
-  void operator=
-    (const scoped_restore_current_inferior &) = delete;
+  DISABLE_COPY_AND_ASSIGN (scoped_restore_current_inferior);
 
 private:
   inferior *m_saved_inf;
index 72eed50befdbd01326f3adb8a2879d9c83047bae..fbfee991c94f989cc5117b99068c581a364b74e6 100644 (file)
--- a/gdb/jit.c
+++ b/gdb/jit.c
@@ -163,8 +163,7 @@ struct jit_reader
     functions->destroy (functions);
   }
 
-  jit_reader (const jit_reader &) = delete;
-  jit_reader &operator= (const jit_reader &) = delete;
+  DISABLE_COPY_AND_ASSIGN (jit_reader);
 
   struct gdb_reader_funcs *functions;
   gdb_dlhandle_up handle;
index ce74fe60be65e7b042f56e79d75285add7d5e258..6c9b0b3ee8c12ab029c015336b01c64031c987c9 100644 (file)
@@ -58,8 +58,7 @@ struct linespec_result
   linespec_result () = default;
   ~linespec_result ();
 
-  linespec_result (const linespec_result &) = delete;
-  linespec_result &operator= (const linespec_result &) = delete;
+  DISABLE_COPY_AND_ASSIGN (linespec_result);
 
   /* If true, the linespec should be displayed to the user.  This
      is used by "unusual" linespecs where the ordinary `info break'
index a4903df26a457e2d63e4f848cc37f50ae9a6958e..2ac7681f4185fa7fdf790f4e1188a15aca0d1e35 100644 (file)
@@ -44,8 +44,7 @@ struct mi_parse
     mi_parse ();
     ~mi_parse ();
 
-    mi_parse (const mi_parse &) = delete;
-    mi_parse &operator= (const mi_parse &) = delete;
+    DISABLE_COPY_AND_ASSIGN (mi_parse);
 
     enum mi_command_type op;
     char *command;
index 0913409e6dd01e78019e85068f2e34e8e744ec5b..b9eab7fcd87eea12c9fdea57be246aea9b3a4964 100644 (file)
@@ -56,9 +56,7 @@ public:
   }
 
 private:
-  /* Disable copying.  */
-  execv_argv (const execv_argv &) = delete;
-  void operator= (const execv_argv &) = delete;
+  DISABLE_COPY_AND_ASSIGN (execv_argv);
 
   /* Helper methods for constructing the argument vector.  */
 
index ec1f4824613d1ce549a691258356c538a25965d1..f679fe3f71140d0b5e144f0197260e72dcc43871 100644 (file)
@@ -273,11 +273,7 @@ public:
   ~scoped_restore_current_program_space ()
   { set_current_program_space (m_saved_pspace); }
 
-  /* Disable copy.  */
-  scoped_restore_current_program_space
-    (const scoped_restore_current_program_space &) = delete;
-  void operator=
-    (const scoped_restore_current_program_space &) = delete;
+  DISABLE_COPY_AND_ASSIGN (scoped_restore_current_program_space);
 
 private:
   program_space *m_saved_pspace;
index abfec91a561b9f2a873552d27fd54de84a27786b..a8270b26adcf5abf4a4405f9843cd78b6ebb8867 100644 (file)
@@ -624,8 +624,7 @@ class gdbpy_enter
 
   ~gdbpy_enter ();
 
-  gdbpy_enter (const gdbpy_enter &) = delete;
-  gdbpy_enter &operator= (const gdbpy_enter &) = delete;
+  DISABLE_COPY_AND_ASSIGN (gdbpy_enter);
 
  private:
 
index aa64a000acf06b90dc7f2f519b07f8ff7e3903b4..eb0454a0e6d324b6554173b7dc89393fc6cca44c 100644 (file)
@@ -255,8 +255,7 @@ public:
   /* Create a readonly regcache from a non-readonly regcache.  */
   regcache (readonly_t, const regcache &src);
 
-  regcache (const regcache &) = delete;
-  void operator= (const regcache &) = delete;
+  DISABLE_COPY_AND_ASSIGN (regcache);
 
   /* class regcache is only extended in unit test, so only mark it
      virtual when selftest is enabled.  */
index 3735e6449b17006255dce19a7c01ec5ae9ddf8b3..877fd68fc254354a269188dc404f9a25c6455976 100644 (file)
@@ -93,9 +93,7 @@ typedef struct tdesc_reg : tdesc_element
     xfree (group);
   }
 
-  /* Disable copying.  */
-  tdesc_reg (const tdesc_reg &) = delete;
-  tdesc_reg &operator= (const tdesc_reg &) = delete;
+  DISABLE_COPY_AND_ASSIGN (tdesc_reg);
 
   /* The name of this register.  In standard features, it may be
      recognized by the architecture support code, or it may be purely
@@ -229,9 +227,8 @@ typedef struct tdesc_type : tdesc_element
       }
     xfree ((char *) name);
   }
-  /* Disable copying.  */
-  tdesc_type (const tdesc_type &) = delete;
-  tdesc_type &operator= (const tdesc_type &) = delete;
+
+  DISABLE_COPY_AND_ASSIGN (tdesc_type);
 
   /* The name of this type.  If this type is a built-in type, this is
      a pointer to a constant string.  Otherwise, it's a
@@ -302,9 +299,7 @@ typedef struct tdesc_feature : tdesc_element
     xfree (name);
   }
 
-  /* Disable copying.  */
-  tdesc_feature (const tdesc_feature &) = delete;
-  tdesc_feature &operator= (const tdesc_feature &) = delete;
+  DISABLE_COPY_AND_ASSIGN (tdesc_feature);
 
   /* The name of this feature.  It may be recognized by the architecture
      support code.  */
index 9ed2bd29531954a3b68accd975bbe103c2fd3f48..519ff1a85b6c4c0964b2aec43af5c1f0e08f5254 100644 (file)
@@ -204,9 +204,7 @@ public:
     m_uiout->end (Type);
   }
 
-  ui_out_emit_type (const ui_out_emit_type<Type> &) = delete;
-  ui_out_emit_type<Type> &operator= (const ui_out_emit_type<Type> &)
-      = delete;
+  DISABLE_COPY_AND_ASSIGN (ui_out_emit_type<Type>);
 
 private: