diff --git a/libcc1/callbacks.hh b/libcc1/callbacks.hh index b1f3e98d917b98c51d41d75afb5347d608713c1a..dc470c62c48d3ab42188e432ca8701f25fef3b2f 100644 --- a/libcc1/callbacks.hh +++ b/libcc1/callbacks.hh @@ -42,6 +42,9 @@ namespace cc1_plugin callbacks (); ~callbacks (); + callbacks (const callbacks &) = delete; + callbacks &operator= (const callbacks &) = delete; + // Add a callback named NAME. FUNC is the function to call when // this method is invoked. void add_callback (const char *name, callback_ftype *func); @@ -52,10 +55,6 @@ namespace cc1_plugin private: - // Declared but not defined to avoid use. - callbacks (const callbacks &); - callbacks &operator= (const callbacks &); - // The mapping. htab_t m_registry; }; diff --git a/libcc1/connection.hh b/libcc1/connection.hh index a0e99bdbd98fd7c9f067d5f54dd40b2f8cfbc0a0..15ad1716a29ed8f3c0dc1449844b30046bac0516 100644 --- a/libcc1/connection.hh +++ b/libcc1/connection.hh @@ -48,6 +48,9 @@ namespace cc1_plugin virtual ~connection () = default; + connection (const connection &) = delete; + connection &operator= (const connection &) = delete; + // Send a single character. This is used to introduce various // higher-level protocol elements. status send (char c); @@ -95,10 +98,6 @@ namespace cc1_plugin private: - // Declared but not defined, to prevent use. - connection (const connection &); - connection &operator= (const connection &); - // Helper function for the wait_* methods. status do_wait (bool); diff --git a/libcc1/rpc.hh b/libcc1/rpc.hh index a8e33577ea180a1f595a4c1845d04537f27c8a0d..429aeb3c127849f04a1a5bbeee70a38b75c660e2 100644 --- a/libcc1/rpc.hh +++ b/libcc1/rpc.hh @@ -39,6 +39,9 @@ namespace cc1_plugin argument_wrapper () { } ~argument_wrapper () { } + argument_wrapper (const argument_wrapper &) = delete; + argument_wrapper &operator= (const argument_wrapper &) = delete; + operator T () const { return m_object; } status unmarshall (connection *conn) @@ -49,10 +52,6 @@ namespace cc1_plugin private: T m_object; - - // No copying or assignment allowed. - argument_wrapper (const argument_wrapper &); - argument_wrapper &operator= (const argument_wrapper &); }; // Specialization for any kind of pointer. This is declared but not @@ -72,6 +71,9 @@ namespace cc1_plugin delete[] m_object; } + argument_wrapper (const argument_wrapper &) = delete; + argument_wrapper &operator= (const argument_wrapper &) = delete; + operator const char * () const { return m_object; @@ -85,10 +87,6 @@ namespace cc1_plugin private: char *m_object; - - // No copying or assignment allowed. - argument_wrapper (const argument_wrapper &); - argument_wrapper &operator= (const argument_wrapper &); }; // Specialization for gcc_type_array. @@ -106,6 +104,9 @@ namespace cc1_plugin delete m_object; } + argument_wrapper (const argument_wrapper &) = delete; + argument_wrapper &operator= (const argument_wrapper &) = delete; + operator const gcc_type_array * () const { return m_object; @@ -119,10 +120,6 @@ namespace cc1_plugin private: gcc_type_array *m_object; - - // No copying or assignment allowed. - argument_wrapper (const argument_wrapper &); - argument_wrapper &operator= (const argument_wrapper &); }; #ifdef GCC_CP_INTERFACE_H @@ -144,6 +141,9 @@ namespace cc1_plugin delete m_object; } + argument_wrapper (const argument_wrapper &) = delete; + argument_wrapper &operator= (const argument_wrapper &) = delete; + operator const gcc_vbase_array * () const { return m_object; @@ -157,10 +157,6 @@ namespace cc1_plugin private: gcc_vbase_array *m_object; - - // No copying or assignment allowed. - argument_wrapper (const argument_wrapper &); - argument_wrapper &operator= (const argument_wrapper &); }; // Specialization for gcc_cp_template_args. @@ -181,6 +177,9 @@ namespace cc1_plugin delete m_object; } + argument_wrapper (const argument_wrapper &) = delete; + argument_wrapper &operator= (const argument_wrapper &) = delete; + operator const gcc_cp_template_args * () const { return m_object; @@ -194,10 +193,6 @@ namespace cc1_plugin private: gcc_cp_template_args *m_object; - - // No copying or assignment allowed. - argument_wrapper (const argument_wrapper &); - argument_wrapper &operator= (const argument_wrapper &); }; // Specialization for gcc_cp_function_args. @@ -217,6 +212,9 @@ namespace cc1_plugin delete m_object; } + argument_wrapper (const argument_wrapper &) = delete; + argument_wrapper &operator= (const argument_wrapper &) = delete; + operator const gcc_cp_function_args * () const { return m_object; @@ -230,10 +228,6 @@ namespace cc1_plugin private: gcc_cp_function_args *m_object; - - // No copying or assignment allowed. - argument_wrapper (const argument_wrapper &); - argument_wrapper &operator= (const argument_wrapper &); }; #endif /* GCC_CP_INTERFACE_H */