changeset 22865:89756f2f085b

use c++11 style for deleting default copy constructor and assignment operator * octave-gui.h, resource-manager.h, shortcut-manager.h, base-text-renderer.h, c-file-ptr-stream.h, dynamic-ld.cc, dynamic-ld.h, event-queue.h, ft-text-renderer.cc, gl-render.cc, gl-render.h, graphics.cc, graphics.in.h, interpreter.h, mex.cc, mxarray.in.h, oct-fstrm.h, oct-iostrm.h, oct-prcstrm.h, oct-procbuf.h, oct-stdstrm.h, oct-stream.cc, oct-stream.h, oct-strstrm.h, octave-link.h, pager.h, profiler.h, sighandlers.cc, symtab.h, text-renderer.h, zfstream.h, __init_fltk__.cc, ov-builtin.h, ov-dld-fcn.h, ov-fcn.h, ov-mex-fcn.h, ov-typeinfo.h, ov-usr-fcn.h, octave.h, lex.h, parse.h, pt-arg-list.h, pt-array-list.h, pt-assign.h, pt-binop.h, pt-bp.h, pt-cbinop.h, pt-cell.h, pt-check.h, pt-classdef.h, pt-cmd.h, pt-colon.h, pt-const.h, pt-decl.h, pt-eval.h, pt-except.h, pt-exp.h, pt-fcn-handle.h, pt-funcall.h, pt-id.h, pt-idx.h, pt-jump.h, pt-loop.h, pt-mat.h, pt-misc.h, pt-pr-code.h, pt-select.h, pt-stmt.h, pt-unop.h, pt-walk.h, pt.h, token.h, Array.cc, idx-vector.h, oct-fftw.h, sparse-chol.cc, sparse-qr.cc, file-ops.h, mach-info.h, oct-env.h, action-container.h, cmd-edit.cc, cmd-edit.h, cmd-hist.h, oct-locbuf.h, oct-mutex.h, oct-shlib.cc, oct-sort.h, pathsearch.h, singleton-cleanup.h, unwind-prot.h, url-transfer.cc, url-transfer.h: Use C++11 style "= delete" declaration to declare copy constructors and assignment operators for classes that should not be copied.
author John W. Eaton <jwe@octave.org>
date Mon, 05 Dec 2016 22:59:37 -0500
parents d744b1ed4851
children b5cf18f8c18b
files libgui/src/octave-gui.h libgui/src/resource-manager.h libgui/src/shortcut-manager.h libinterp/corefcn/base-text-renderer.h libinterp/corefcn/c-file-ptr-stream.h libinterp/corefcn/dynamic-ld.cc libinterp/corefcn/dynamic-ld.h libinterp/corefcn/event-queue.h libinterp/corefcn/ft-text-renderer.cc libinterp/corefcn/gl-render.cc libinterp/corefcn/gl-render.h libinterp/corefcn/graphics.cc libinterp/corefcn/graphics.in.h libinterp/corefcn/interpreter.h libinterp/corefcn/mex.cc libinterp/corefcn/mxarray.in.h libinterp/corefcn/oct-fstrm.h libinterp/corefcn/oct-iostrm.h libinterp/corefcn/oct-prcstrm.h libinterp/corefcn/oct-procbuf.h libinterp/corefcn/oct-stdstrm.h libinterp/corefcn/oct-stream.cc libinterp/corefcn/oct-stream.h libinterp/corefcn/oct-strstrm.h libinterp/corefcn/octave-link.h libinterp/corefcn/pager.h libinterp/corefcn/profiler.h libinterp/corefcn/sighandlers.cc libinterp/corefcn/symtab.h libinterp/corefcn/text-renderer.h libinterp/corefcn/zfstream.h libinterp/dldfcn/__init_fltk__.cc libinterp/octave-value/ov-builtin.h libinterp/octave-value/ov-dld-fcn.h libinterp/octave-value/ov-fcn.h libinterp/octave-value/ov-mex-fcn.h libinterp/octave-value/ov-typeinfo.h libinterp/octave-value/ov-usr-fcn.h libinterp/octave.h libinterp/parse-tree/lex.h libinterp/parse-tree/parse.h libinterp/parse-tree/pt-arg-list.h libinterp/parse-tree/pt-array-list.h libinterp/parse-tree/pt-assign.h libinterp/parse-tree/pt-binop.h libinterp/parse-tree/pt-bp.h libinterp/parse-tree/pt-cbinop.h libinterp/parse-tree/pt-cell.h libinterp/parse-tree/pt-check.h libinterp/parse-tree/pt-classdef.h libinterp/parse-tree/pt-cmd.h libinterp/parse-tree/pt-colon.h libinterp/parse-tree/pt-const.h libinterp/parse-tree/pt-decl.h libinterp/parse-tree/pt-eval.h libinterp/parse-tree/pt-except.h libinterp/parse-tree/pt-exp.h libinterp/parse-tree/pt-fcn-handle.h libinterp/parse-tree/pt-funcall.h libinterp/parse-tree/pt-id.h libinterp/parse-tree/pt-idx.h libinterp/parse-tree/pt-jump.h libinterp/parse-tree/pt-loop.h libinterp/parse-tree/pt-mat.h libinterp/parse-tree/pt-misc.h libinterp/parse-tree/pt-pr-code.h libinterp/parse-tree/pt-select.h libinterp/parse-tree/pt-stmt.h libinterp/parse-tree/pt-unop.h libinterp/parse-tree/pt-walk.h libinterp/parse-tree/pt.h libinterp/parse-tree/token.h liboctave/array/Array.cc liboctave/array/idx-vector.h liboctave/numeric/oct-fftw.h liboctave/numeric/sparse-chol.cc liboctave/numeric/sparse-qr.cc liboctave/system/file-ops.h liboctave/system/mach-info.h liboctave/system/oct-env.h liboctave/util/action-container.h liboctave/util/cmd-edit.cc liboctave/util/cmd-edit.h liboctave/util/cmd-hist.h liboctave/util/oct-locbuf.h liboctave/util/oct-mutex.h liboctave/util/oct-shlib.cc liboctave/util/oct-sort.h liboctave/util/pathsearch.h liboctave/util/singleton-cleanup.h liboctave/util/unwind-prot.h liboctave/util/url-transfer.cc liboctave/util/url-transfer.h
diffstat 93 files changed, 443 insertions(+), 410 deletions(-) [+]
line wrap: on
line diff
--- a/libgui/src/octave-gui.h	Mon Dec 05 21:04:07 2016 -0500
+++ b/libgui/src/octave-gui.h	Mon Dec 05 22:59:37 2016 -0500
@@ -48,9 +48,9 @@
 
     // No copying, at least not yet.
 
-    gui_application (const gui_application&);
+    gui_application (const gui_application&) = delete;
 
-    gui_application& operator = (const gui_application&);
+    gui_application& operator = (const gui_application&) = delete;
 
     int m_argc;
     char **m_argv;
--- a/libgui/src/resource-manager.h	Mon Dec 05 21:04:07 2016 -0500
+++ b/libgui/src/resource-manager.h	Mon Dec 05 22:59:37 2016 -0500
@@ -116,6 +116,10 @@
 
   // No copying!
 
+  resource_manager (const resource_manager&) = delete;
+
+  resource_manager& operator = (const resource_manager&) = delete;
+  
   static bool instance_ok (void);
 
   QString settings_directory;
--- a/libgui/src/shortcut-manager.h	Mon Dec 05 21:04:07 2016 -0500
+++ b/libgui/src/shortcut-manager.h	Mon Dec 05 22:59:37 2016 -0500
@@ -115,6 +115,10 @@
 
   // No copying!
 
+  shortcut_manager (const shortcut_manager&) = delete;
+
+  shortcut_manager& operator = (const shortcut_manager&) = delete;
+
   static bool instance_ok (void);
 
   void init (const QString&, const QString&, const QKeySequence&);
--- a/libinterp/corefcn/base-text-renderer.h	Mon Dec 05 21:04:07 2016 -0500
+++ b/libinterp/corefcn/base-text-renderer.h	Mon Dec 05 22:59:37 2016 -0500
@@ -75,9 +75,9 @@
 
     // No copying!
 
-    base_text_renderer (const base_text_renderer&);
+    base_text_renderer (const base_text_renderer&) = delete;
 
-    base_text_renderer& operator = (const base_text_renderer&);
+    base_text_renderer& operator = (const base_text_renderer&) = delete;
   };
 }
 
--- a/libinterp/corefcn/c-file-ptr-stream.h	Mon Dec 05 21:04:07 2016 -0500
+++ b/libinterp/corefcn/c-file-ptr-stream.h	Mon Dec 05 22:59:37 2016 -0500
@@ -92,9 +92,9 @@
 
   // No copying!
 
-  c_file_ptr_buf (const c_file_ptr_buf&);
+  c_file_ptr_buf (const c_file_ptr_buf&) = delete;
 
-  c_file_ptr_buf& operator = (const c_file_ptr_buf&);
+  c_file_ptr_buf& operator = (const c_file_ptr_buf&) = delete;
 };
 
 // FIXME: the following three classes could probably share some code...
@@ -127,9 +127,9 @@
 
   // No copying!
 
-  c_file_ptr_stream (const c_file_ptr_stream&);
+  c_file_ptr_stream (const c_file_ptr_stream&) = delete;
 
-  c_file_ptr_stream& operator = (const c_file_ptr_stream&);
+  c_file_ptr_stream& operator = (const c_file_ptr_stream&) = delete;
 };
 
 typedef c_file_ptr_stream<std::istream, FILE *, c_file_ptr_buf>
@@ -209,9 +209,9 @@
 
   // No copying!
 
-  c_zfile_ptr_buf (const c_zfile_ptr_buf&);
+  c_zfile_ptr_buf (const c_zfile_ptr_buf&) = delete;
 
-  c_zfile_ptr_buf& operator = (const c_zfile_ptr_buf&);
+  c_zfile_ptr_buf& operator = (const c_zfile_ptr_buf&) = delete;
 };
 
 typedef c_file_ptr_stream<std::istream, gzFile, c_zfile_ptr_buf>
--- a/libinterp/corefcn/dynamic-ld.cc	Mon Dec 05 21:04:07 2016 -0500
+++ b/libinterp/corefcn/dynamic-ld.cc	Mon Dec 05 22:59:37 2016 -0500
@@ -90,9 +90,9 @@
 
   // No copying!
 
-  octave_shlib_list (const octave_shlib_list&);
+  octave_shlib_list (const octave_shlib_list&) = delete;
 
-  octave_shlib_list& operator = (const octave_shlib_list&);
+  octave_shlib_list& operator = (const octave_shlib_list&) = delete;
 };
 
 octave_shlib_list *octave_shlib_list::instance = 0;
--- a/libinterp/corefcn/dynamic-ld.h	Mon Dec 05 21:04:07 2016 -0500
+++ b/libinterp/corefcn/dynamic-ld.h	Mon Dec 05 22:59:37 2016 -0500
@@ -62,9 +62,9 @@
 
   // No copying!
 
-  octave_dynamic_loader (const octave_dynamic_loader&);
+  octave_dynamic_loader (const octave_dynamic_loader&) = delete;
 
-  octave_dynamic_loader& operator = (const octave_dynamic_loader&);
+  octave_dynamic_loader& operator = (const octave_dynamic_loader&) = delete;
 
   static octave_dynamic_loader *instance;
 
--- a/libinterp/corefcn/event-queue.h	Mon Dec 05 21:04:07 2016 -0500
+++ b/libinterp/corefcn/event-queue.h	Mon Dec 05 22:59:37 2016 -0500
@@ -79,9 +79,9 @@
 
   // No copying!
 
-  event_queue (const event_queue&);
+  event_queue (const event_queue&) = delete;
 
-  event_queue& operator = (const event_queue&);
+  event_queue& operator = (const event_queue&) = delete;
 };
 
 // Like event_queue, but this one will guard against the
@@ -118,9 +118,9 @@
 
   // No copying!
 
-  event_queue_safe (const event_queue_safe&);
+  event_queue_safe (const event_queue_safe&) = delete;
 
-  event_queue_safe& operator = (const event_queue_safe&);
+  event_queue_safe& operator = (const event_queue_safe&) = delete;
 };
 
 #endif
--- a/libinterp/corefcn/ft-text-renderer.cc	Mon Dec 05 21:04:07 2016 -0500
+++ b/libinterp/corefcn/ft-text-renderer.cc	Mon Dec 05 22:59:37 2016 -0500
@@ -143,9 +143,9 @@
 
     // No copying!
 
-    ft_manager (const ft_manager&);
+    ft_manager (const ft_manager&) = delete;
 
-    ft_manager& operator = (const ft_manager&);
+    ft_manager& operator = (const ft_manager&) = delete;
 
     ft_manager (void)
       : library (), freetype_initialized (false), fontconfig_initialized (false)
@@ -405,9 +405,9 @@
 
     // No copying!
 
-    ft_text_renderer (const ft_text_renderer&);
+    ft_text_renderer (const ft_text_renderer&) = delete;
 
-    ft_text_renderer& operator = (const ft_text_renderer&);
+    ft_text_renderer& operator = (const ft_text_renderer&) = delete;
 
     // Class to hold information about fonts and a strong
     // reference to the font objects loaded by FreeType.
--- a/libinterp/corefcn/gl-render.cc	Mon Dec 05 21:04:07 2016 -0500
+++ b/libinterp/corefcn/gl-render.cc	Mon Dec 05 22:59:37 2016 -0500
@@ -352,9 +352,9 @@
 
     // No copying!
 
-    opengl_tesselator (const opengl_tesselator&);
-
-    opengl_tesselator operator = (const opengl_tesselator&);
+    opengl_tesselator (const opengl_tesselator&) = delete;
+
+    opengl_tesselator operator = (const opengl_tesselator&) = delete;
 
     GLUtesselator *glu_tess;
     bool fill;
@@ -571,9 +571,9 @@
 
     // No copying!
 
-    patch_tesselator (const patch_tesselator&);
-
-    patch_tesselator& operator = (const patch_tesselator&);
+    patch_tesselator (const patch_tesselator&) = delete;
+
+    patch_tesselator& operator = (const patch_tesselator&) = delete;
 
     opengl_renderer *renderer;
     int color_mode;
--- a/libinterp/corefcn/gl-render.h	Mon Dec 05 21:04:07 2016 -0500
+++ b/libinterp/corefcn/gl-render.h	Mon Dec 05 22:59:37 2016 -0500
@@ -141,9 +141,9 @@
 
     // No copying!
 
-    opengl_renderer (const opengl_renderer&);
+    opengl_renderer (const opengl_renderer&) = delete;
 
-    opengl_renderer& operator = (const opengl_renderer&);
+    opengl_renderer& operator = (const opengl_renderer&) = delete;
 
     bool is_nan_or_inf (double x, double y, double z) const
     {
--- a/libinterp/corefcn/graphics.cc	Mon Dec 05 21:04:07 2016 -0500
+++ b/libinterp/corefcn/graphics.cc	Mon Dec 05 22:59:37 2016 -0500
@@ -9511,9 +9511,9 @@
 
   // No copying!
 
-  function_event (const function_event&);
-
-  function_event & operator = (const function_event&);
+  function_event (const function_event&) = delete;
+
+  function_event & operator = (const function_event&) = delete;
 };
 
 class
--- a/libinterp/corefcn/graphics.in.h	Mon Dec 05 21:04:07 2016 -0500
+++ b/libinterp/corefcn/graphics.in.h	Mon Dec 05 22:59:37 2016 -0500
@@ -2928,12 +2928,9 @@
 
   // No copying!
 
-  base_graphics_object (const base_graphics_object&) : count (0) { }
-
-  base_graphics_object& operator = (const base_graphics_object&)
-  {
-    return *this;
-  }
+  base_graphics_object (const base_graphics_object&) = delete;
+
+  base_graphics_object& operator = (const base_graphics_object&) = delete;
 };
 
 class OCTINTERP_API graphics_object
@@ -6369,8 +6366,10 @@
   private:
 
     // No copying!
-    auto_lock (const auto_lock&);
-    auto_lock& operator = (const auto_lock&);
+
+    auto_lock (const auto_lock&) = delete;
+
+    auto_lock& operator = (const auto_lock&) = delete;
   };
 
 private:
--- a/libinterp/corefcn/interpreter.h	Mon Dec 05 21:04:07 2016 -0500
+++ b/libinterp/corefcn/interpreter.h	Mon Dec 05 22:59:37 2016 -0500
@@ -117,9 +117,9 @@
 
     // No copying, at least not yet...
 
-    interpreter (const interpreter&);
+    interpreter (const interpreter&) = delete;
 
-    interpreter& operator = (const interpreter&);
+    interpreter& operator = (const interpreter&) = delete;
 
     int main_loop (void);
 
--- a/libinterp/corefcn/mex.cc	Mon Dec 05 21:04:07 2016 -0500
+++ b/libinterp/corefcn/mex.cc	Mon Dec 05 22:59:37 2016 -0500
@@ -2364,9 +2364,9 @@
 
   // No copying!
 
-  mex (const mex&);
-
-  mex& operator = (const mex&);
+  mex (const mex&) = delete;
+
+  mex& operator = (const mex&) = delete;
 };
 
 // List of memory resources we allocated.
--- a/libinterp/corefcn/mxarray.in.h	Mon Dec 05 21:04:07 2016 -0500
+++ b/libinterp/corefcn/mxarray.in.h	Mon Dec 05 22:59:37 2016 -0500
@@ -537,9 +537,9 @@
 
   // No copying!
 
-  mxArray (const mxArray&);
+  mxArray (const mxArray&) = delete;
 
-  mxArray& operator = (const mxArray&);
+  mxArray& operator = (const mxArray&) = delete;
 };
 
 #undef DO_MUTABLE_METHOD
--- a/libinterp/corefcn/oct-fstrm.h	Mon Dec 05 21:04:07 2016 -0500
+++ b/libinterp/corefcn/oct-fstrm.h	Mon Dec 05 22:59:37 2016 -0500
@@ -80,9 +80,9 @@
 
   // No copying!
 
-  octave_fstream (const octave_fstream&);
+  octave_fstream (const octave_fstream&) = delete;
 
-  octave_fstream& operator = (const octave_fstream&);
+  octave_fstream& operator = (const octave_fstream&) = delete;
 };
 
 #endif
--- a/libinterp/corefcn/oct-iostrm.h	Mon Dec 05 21:04:07 2016 -0500
+++ b/libinterp/corefcn/oct-iostrm.h	Mon Dec 05 22:59:37 2016 -0500
@@ -70,9 +70,9 @@
 
   // No copying!
 
-  octave_base_iostream (const octave_base_iostream&);
+  octave_base_iostream (const octave_base_iostream&) = delete;
 
-  octave_base_iostream& operator = (const octave_base_iostream&);
+  octave_base_iostream& operator = (const octave_base_iostream&) = delete;
 };
 
 class
@@ -109,9 +109,9 @@
 
   // No copying!
 
-  octave_istream (const octave_istream&);
+  octave_istream (const octave_istream&) = delete;
 
-  octave_istream& operator = (const octave_istream&);
+  octave_istream& operator = (const octave_istream&) = delete;
 };
 
 class
@@ -148,9 +148,9 @@
 
   // No copying!
 
-  octave_ostream (const octave_ostream&);
+  octave_ostream (const octave_ostream&) = delete;
 
-  octave_ostream& operator = (const octave_ostream&);
+  octave_ostream& operator = (const octave_ostream&) = delete;
 };
 
 #endif
--- a/libinterp/corefcn/oct-prcstrm.h	Mon Dec 05 21:04:07 2016 -0500
+++ b/libinterp/corefcn/oct-prcstrm.h	Mon Dec 05 22:59:37 2016 -0500
@@ -53,9 +53,9 @@
 
   // No copying!
 
-  octave_iprocstream (const octave_iprocstream&);
+  octave_iprocstream (const octave_iprocstream&) = delete;
 
-  octave_iprocstream& operator = (const octave_iprocstream&);
+  octave_iprocstream& operator = (const octave_iprocstream&) = delete;
 };
 
 class
@@ -81,9 +81,9 @@
 
   // No copying!
 
-  octave_oprocstream (const octave_oprocstream&);
+  octave_oprocstream (const octave_oprocstream&) = delete;
 
-  octave_oprocstream& operator = (const octave_oprocstream&);
+  octave_oprocstream& operator = (const octave_oprocstream&) = delete;
 };
 
 #endif
--- a/libinterp/corefcn/oct-procbuf.h	Mon Dec 05 21:04:07 2016 -0500
+++ b/libinterp/corefcn/oct-procbuf.h	Mon Dec 05 22:59:37 2016 -0500
@@ -71,9 +71,9 @@
 
   // No copying!
 
-  octave_procbuf (const octave_procbuf&);
+  octave_procbuf (const octave_procbuf&) = delete;
 
-  octave_procbuf& operator = (const octave_procbuf&);
+  octave_procbuf& operator = (const octave_procbuf&) = delete;
 };
 
 extern void symbols_of_oct_procbuf (void);
--- a/libinterp/corefcn/oct-stdstrm.h	Mon Dec 05 21:04:07 2016 -0500
+++ b/libinterp/corefcn/oct-stdstrm.h	Mon Dec 05 22:59:37 2016 -0500
@@ -93,9 +93,9 @@
 
   // No copying!
 
-  octave_tstdiostream (const octave_tstdiostream&);
+  octave_tstdiostream (const octave_tstdiostream&) = delete;
 
-  octave_tstdiostream& operator = (const octave_tstdiostream&);
+  octave_tstdiostream& operator = (const octave_tstdiostream&) = delete;
 };
 
 class
@@ -130,9 +130,9 @@
 
   // No copying!
 
-  octave_stdiostream (const octave_stdiostream&);
+  octave_stdiostream (const octave_stdiostream&) = delete;
 
-  octave_stdiostream& operator = (const octave_stdiostream&);
+  octave_stdiostream& operator = (const octave_stdiostream&) = delete;
 };
 
 #if defined (HAVE_ZLIB)
@@ -170,9 +170,9 @@
 
   // No copying!
 
-  octave_zstdiostream (const octave_zstdiostream&);
+  octave_zstdiostream (const octave_zstdiostream&) = delete;
 
-  octave_zstdiostream& operator = (const octave_zstdiostream&);
+  octave_zstdiostream& operator = (const octave_zstdiostream&) = delete;
 };
 
 #endif
--- a/libinterp/corefcn/oct-stream.cc	Mon Dec 05 21:04:07 2016 -0500
+++ b/libinterp/corefcn/oct-stream.cc	Mon Dec 05 22:59:37 2016 -0500
@@ -319,9 +319,9 @@
                          char modifier);
   // No copying!
 
-  scanf_format_list (const scanf_format_list&);
-
-  scanf_format_list& operator = (const scanf_format_list&);
+  scanf_format_list (const scanf_format_list&) = delete;
+
+  scanf_format_list& operator = (const scanf_format_list&) = delete;
 };
 
 scanf_format_list::scanf_format_list (const std::string& s)
@@ -861,9 +861,9 @@
 
   // No copying!
 
-  printf_format_list (const printf_format_list&);
-
-  printf_format_list& operator = (const printf_format_list&);
+  printf_format_list (const printf_format_list&) = delete;
+
+  printf_format_list& operator = (const printf_format_list&) = delete;
 };
 
 printf_format_list::printf_format_list (const std::string& s)
@@ -1341,9 +1341,9 @@
 
     // No copying!
 
-    delimited_stream (const delimited_stream&);
-
-    delimited_stream& operator = (const delimited_stream&);
+    delimited_stream (const delimited_stream&) = delete;
+
+    delimited_stream& operator = (const delimited_stream&) = delete;
   };
 
   // Create a delimited stream, reading from is, with delimiters delims,
@@ -1780,9 +1780,9 @@
                            bool discard, char& type);
     // No copying!
 
-    textscan_format_list (const textscan_format_list&);
-
-    textscan_format_list& operator = (const textscan_format_list&);
+    textscan_format_list (const textscan_format_list&) = delete;
+
+    textscan_format_list& operator = (const textscan_format_list&) = delete;
   };
 
   // Main class to implement textscan.  Read data and parse it
@@ -1933,9 +1933,9 @@
 
     // No copying!
 
-    textscan (const textscan&);
-
-    textscan& operator = (const textscan&);
+    textscan (const textscan&) = delete;
+
+    textscan& operator = (const textscan&) = delete;
   };
 
   textscan_format_list::textscan_format_list (const std::string& s,
@@ -5326,9 +5326,9 @@
 
   // No copying!
 
-  printf_value_cache (const printf_value_cache&);
-
-  printf_value_cache& operator = (const printf_value_cache&);
+  printf_value_cache (const printf_value_cache&) = delete;
+
+  printf_value_cache& operator = (const printf_value_cache&) = delete;
 };
 
 octave_value
--- a/libinterp/corefcn/oct-stream.h	Mon Dec 05 21:04:07 2016 -0500
+++ b/libinterp/corefcn/oct-stream.h	Mon Dec 05 22:59:37 2016 -0500
@@ -232,9 +232,9 @@
 
   // No copying!
 
-  octave_base_stream (const octave_base_stream&);
+  octave_base_stream (const octave_base_stream&) = delete;
 
-  octave_base_stream& operator = (const octave_base_stream&);
+  octave_base_stream& operator = (const octave_base_stream&) = delete;
 };
 
 class
--- a/libinterp/corefcn/oct-strstrm.h	Mon Dec 05 21:04:07 2016 -0500
+++ b/libinterp/corefcn/oct-strstrm.h	Mon Dec 05 22:59:37 2016 -0500
@@ -66,9 +66,9 @@
 
   // No copying!
 
-  octave_base_strstream (const octave_base_strstream&);
+  octave_base_strstream (const octave_base_strstream&) = delete;
 
-  octave_base_strstream& operator = (const octave_base_strstream&);
+  octave_base_strstream& operator = (const octave_base_strstream&) = delete;
 };
 
 class
@@ -124,9 +124,9 @@
 
   // No copying!
 
-  octave_istrstream (const octave_istrstream&);
+  octave_istrstream (const octave_istrstream&) = delete;
 
-  octave_istrstream& operator = (const octave_istrstream&);
+  octave_istrstream& operator = (const octave_istrstream&) = delete;
 };
 
 class
@@ -170,9 +170,9 @@
 
   // No copying!
 
-  octave_ostrstream (const octave_ostrstream&);
+  octave_ostrstream (const octave_ostrstream&) = delete;
 
-  octave_ostrstream& operator = (const octave_ostrstream&);
+  octave_ostrstream& operator = (const octave_ostrstream&) = delete;
 };
 
 #endif
--- a/libinterp/corefcn/octave-link.h	Mon Dec 05 21:04:07 2016 -0500
+++ b/libinterp/corefcn/octave-link.h	Mon Dec 05 22:59:37 2016 -0500
@@ -356,9 +356,9 @@
 
   // No copying!
 
-  octave_link (const octave_link&);
+  octave_link (const octave_link&) = delete;
 
-  octave_link& operator = (const octave_link&);
+  octave_link& operator = (const octave_link&) = delete;
 
   static bool instance_ok (void) { return instance != 0; }
 
--- a/libinterp/corefcn/pager.h	Mon Dec 05 21:04:07 2016 -0500
+++ b/libinterp/corefcn/pager.h	Mon Dec 05 22:59:37 2016 -0500
@@ -90,9 +90,9 @@
 
   // No copying!
 
-  octave_pager_stream (const octave_pager_stream&);
+  octave_pager_stream (const octave_pager_stream&) = delete;
 
-  octave_pager_stream& operator = (const octave_pager_stream&);
+  octave_pager_stream& operator = (const octave_pager_stream&) = delete;
 };
 
 class
@@ -138,9 +138,9 @@
 
   // No copying!
 
-  octave_diary_stream (const octave_diary_stream&);
+  octave_diary_stream (const octave_diary_stream&) = delete;
 
-  octave_diary_stream& operator = (const octave_diary_stream&);
+  octave_diary_stream& operator = (const octave_diary_stream&) = delete;
 };
 
 #define octave_stdout (octave_pager_stream::stream ())
--- a/libinterp/corefcn/profiler.h	Mon Dec 05 21:04:07 2016 -0500
+++ b/libinterp/corefcn/profiler.h	Mon Dec 05 22:59:37 2016 -0500
@@ -80,8 +80,10 @@
   private:
 
     // No copying!
-    enter (const enter&);
-    enter& operator = (const enter&);
+
+    enter (const enter&) = delete;
+
+    enter& operator = (const enter&) = delete;
   };
 
   profile_data_accumulator (void);
@@ -160,8 +162,10 @@
     unsigned calls;
 
     // No copying!
-    tree_node (const tree_node&);
-    tree_node& operator = (const tree_node&);
+
+    tree_node (const tree_node&) = delete;
+
+    tree_node& operator = (const tree_node&) = delete;
   };
 
   // Each function we see in the profiler is given a unique index (which
@@ -199,8 +203,10 @@
   void add_current_time (void);
 
   // No copying!
-  profile_data_accumulator (const profile_data_accumulator&);
-  profile_data_accumulator& operator = (const profile_data_accumulator&);
+
+  profile_data_accumulator (const profile_data_accumulator&) = delete;
+
+  profile_data_accumulator& operator = (const profile_data_accumulator&) = delete;
 };
 
 // The instance used.
--- a/libinterp/corefcn/sighandlers.cc	Mon Dec 05 21:04:07 2016 -0500
+++ b/libinterp/corefcn/sighandlers.cc	Mon Dec 05 22:59:37 2016 -0500
@@ -102,9 +102,9 @@
 
     // No copying!
 
-    base_interrupt_manager (const base_interrupt_manager&);
+    base_interrupt_manager (const base_interrupt_manager&) = delete;
 
-    base_interrupt_manager& operator = (const base_interrupt_manager&);
+    base_interrupt_manager& operator = (const base_interrupt_manager&) = delete;
   };
 
 #if defined (OCTAVE_USE_WINDOWS_API)
@@ -201,9 +201,9 @@
 
     // No copying!
 
-    w32_interrupt_manager (const w32_interrupt_manager&);
+    w32_interrupt_manager (const w32_interrupt_manager&) = delete;
 
-    w32_interrupt_manager& operator = (const w32_interrupt_manager&);
+    w32_interrupt_manager& operator = (const w32_interrupt_manager&) = delete;
   };
 
 #endif
@@ -238,9 +238,9 @@
 
     // No copying!
 
-    posix_interrupt_manager (const posix_interrupt_manager&);
+    posix_interrupt_manager (const posix_interrupt_manager&) = delete;
 
-    posix_interrupt_manager& operator = (const posix_interrupt_manager&);
+    posix_interrupt_manager& operator = (const posix_interrupt_manager&) = delete;
   };
 
   class
@@ -276,9 +276,9 @@
 
     // No copying!
 
-    interrupt_manager (const interrupt_manager&);
+    interrupt_manager (const interrupt_manager&) = delete;
 
-    interrupt_manager& operator = (const interrupt_manager&);
+    interrupt_manager& operator = (const interrupt_manager&) = delete;
 
     static bool instance_ok (void)
     {
--- a/libinterp/corefcn/symtab.h	Mon Dec 05 21:04:07 2016 -0500
+++ b/libinterp/corefcn/symtab.h	Mon Dec 05 22:59:37 2016 -0500
@@ -106,9 +106,9 @@
 
     // No copying!
 
-    scope_id_cache (const scope_id_cache&);
-
-    scope_id_cache& operator = (const scope_id_cache&);
+    scope_id_cache (const scope_id_cache&) = delete;
+
+    scope_id_cache& operator = (const scope_id_cache&) = delete;
 
     static scope_id_cache *instance;
 
@@ -477,9 +477,9 @@
 
       // No copying!
 
-      symbol_record_rep (const symbol_record_rep& ov);
-
-      symbol_record_rep& operator = (const symbol_record_rep&);
+      symbol_record_rep (const symbol_record_rep& ov) = delete;
+
+      symbol_record_rep& operator = (const symbol_record_rep&) = delete;
     };
 
   public:
@@ -952,9 +952,9 @@
 
       // No copying!
 
-      fcn_info_rep (const fcn_info_rep&);
-
-      fcn_info_rep& operator = (const fcn_info_rep&);
+      fcn_info_rep (const fcn_info_rep&) = delete;
+
+      fcn_info_rep& operator = (const fcn_info_rep&) = delete;
     };
 
   public:
@@ -2195,9 +2195,9 @@
 
   // No copying!
 
-  symbol_table (const symbol_table&);
-
-  symbol_table& operator = (const symbol_table&);
+  symbol_table (const symbol_table&) = delete;
+
+  symbol_table& operator = (const symbol_table&) = delete;
 
   typedef std::map<std::string, symbol_record>::const_iterator
     table_const_iterator;
--- a/libinterp/corefcn/text-renderer.h	Mon Dec 05 21:04:07 2016 -0500
+++ b/libinterp/corefcn/text-renderer.h	Mon Dec 05 22:59:37 2016 -0500
@@ -206,9 +206,9 @@
 
     // No copying!
 
-    text_renderer (const text_renderer&);
+    text_renderer (const text_renderer&) = delete;
 
-    text_renderer& operator = (const text_renderer&);
+    text_renderer& operator = (const text_renderer&) = delete;
   };
 }
 
--- a/libinterp/corefcn/zfstream.h	Mon Dec 05 21:04:07 2016 -0500
+++ b/libinterp/corefcn/zfstream.h	Mon Dec 05 22:59:37 2016 -0500
@@ -202,9 +202,9 @@
 
   // No copying!
 
-  gzfilebuf (const gzfilebuf&);
+  gzfilebuf (const gzfilebuf&) = delete;
 
-  gzfilebuf& operator = (const gzfilebuf&);
+  gzfilebuf& operator = (const gzfilebuf&) = delete;
 
   /**
    *  @brief  Allocate internal buffer.
--- a/libinterp/dldfcn/__init_fltk__.cc	Mon Dec 05 21:04:07 2016 -0500
+++ b/libinterp/dldfcn/__init_fltk__.cc	Mon Dec 05 22:59:37 2016 -0500
@@ -738,9 +738,9 @@
 
   // No copying!
 
-  fltk_uimenu (const fltk_uimenu&);
+  fltk_uimenu (const fltk_uimenu&) = delete;
 
-  fltk_uimenu operator = (const fltk_uimenu&);
+  fltk_uimenu operator = (const fltk_uimenu&) = delete;
 
   Fl_Menu_Bar* menubar;
 };
@@ -1036,9 +1036,9 @@
 
   // No copying!
 
-  plot_window (const plot_window&);
+  plot_window (const plot_window&) = delete;
 
-  plot_window& operator = (const plot_window&);
+  plot_window& operator = (const plot_window&) = delete;
 
   // window name -- this must exists for the duration of the window's
   // life
@@ -1951,8 +1951,10 @@
   figure_manager (void) { }
 
   // No copying!
-  figure_manager (const figure_manager&);
-  figure_manager& operator = (const figure_manager&);
+
+  figure_manager (const figure_manager&) = delete;
+
+  figure_manager& operator = (const figure_manager&) = delete;
 
   // Singelton -- hide all of the above.
 
--- a/libinterp/octave-value/ov-builtin.h	Mon Dec 05 21:04:07 2016 -0500
+++ b/libinterp/octave-value/ov-builtin.h	Mon Dec 05 22:59:37 2016 -0500
@@ -108,9 +108,9 @@
 
   // No copying!
 
-  octave_builtin (const octave_builtin& ob);
+  octave_builtin (const octave_builtin& ob) = delete;
 
-  octave_builtin& operator = (const octave_builtin& ob);
+  octave_builtin& operator = (const octave_builtin& ob) = delete;
 
   DECLARE_OV_TYPEID_FUNCTIONS_AND_DATA
 };
--- a/libinterp/octave-value/ov-dld-fcn.h	Mon Dec 05 21:04:07 2016 -0500
+++ b/libinterp/octave-value/ov-dld-fcn.h	Mon Dec 05 22:59:37 2016 -0500
@@ -91,9 +91,9 @@
 
   // No copying!
 
-  octave_dld_function (const octave_dld_function& fn);
+  octave_dld_function (const octave_dld_function& fn) = delete;
 
-  octave_dld_function& operator = (const octave_dld_function& fn);
+  octave_dld_function& operator = (const octave_dld_function& fn) = delete;
 
   DECLARE_OV_TYPEID_FUNCTIONS_AND_DATA
 };
--- a/libinterp/octave-value/ov-fcn.h	Mon Dec 05 21:04:07 2016 -0500
+++ b/libinterp/octave-value/ov-fcn.h	Mon Dec 05 22:59:37 2016 -0500
@@ -220,9 +220,9 @@
 
   // No copying!
 
-  octave_function (const octave_function& f);
+  octave_function (const octave_function& f) = delete;
 
-  octave_function& operator = (const octave_function& f);
+  octave_function& operator = (const octave_function& f) = delete;
 
 };
 
--- a/libinterp/octave-value/ov-mex-fcn.h	Mon Dec 05 21:04:07 2016 -0500
+++ b/libinterp/octave-value/ov-mex-fcn.h	Mon Dec 05 22:59:37 2016 -0500
@@ -110,9 +110,9 @@
 
   // No copying!
 
-  octave_mex_function (const octave_mex_function& fn);
+  octave_mex_function (const octave_mex_function& fn) = delete;
 
-  octave_mex_function& operator = (const octave_mex_function& fn);
+  octave_mex_function& operator = (const octave_mex_function& fn) = delete;
 
   DECLARE_OV_TYPEID_FUNCTIONS_AND_DATA
 };
--- a/libinterp/octave-value/ov-typeinfo.h	Mon Dec 05 21:04:07 2016 -0500
+++ b/libinterp/octave-value/ov-typeinfo.h	Mon Dec 05 22:59:37 2016 -0500
@@ -321,9 +321,9 @@
 
   // No copying!
 
-  octave_value_typeinfo (const octave_value_typeinfo&);
+  octave_value_typeinfo (const octave_value_typeinfo&) = delete;
 
-  octave_value_typeinfo& operator = (const octave_value_typeinfo&);
+  octave_value_typeinfo& operator = (const octave_value_typeinfo&) = delete;
 };
 
 #endif
--- a/libinterp/octave-value/ov-usr-fcn.h	Mon Dec 05 21:04:07 2016 -0500
+++ b/libinterp/octave-value/ov-usr-fcn.h	Mon Dec 05 22:59:37 2016 -0500
@@ -75,9 +75,9 @@
 
   // No copying!
 
-  octave_user_code (const octave_user_code& f);
+  octave_user_code (const octave_user_code& f) = delete;
 
-  octave_user_code& operator = (const octave_user_code& f);
+  octave_user_code& operator = (const octave_user_code& f) = delete;
 };
 
 // Scripts.
@@ -163,9 +163,9 @@
 
   // No copying!
 
-  octave_user_script (const octave_user_script& f);
+  octave_user_script (const octave_user_script& f) = delete;
 
-  octave_user_script& operator = (const octave_user_script& f);
+  octave_user_script& operator = (const octave_user_script& f) = delete;
 
   DECLARE_OV_TYPEID_FUNCTIONS_AND_DATA
 };
@@ -517,9 +517,9 @@
 
   // No copying!
 
-  octave_user_function (const octave_user_function& fn);
+  octave_user_function (const octave_user_function& fn) = delete;
 
-  octave_user_function& operator = (const octave_user_function& fn);
+  octave_user_function& operator = (const octave_user_function& fn) = delete;
 
   DECLARE_OV_TYPEID_FUNCTIONS_AND_DATA
 };
--- a/libinterp/octave.h	Mon Dec 05 21:04:07 2016 -0500
+++ b/libinterp/octave.h	Mon Dec 05 22:59:37 2016 -0500
@@ -239,9 +239,9 @@
 
     // No copying, at least not yet...
 
-    application (const application&);
+    application (const application&) = delete;
 
-    application& operator = (const application&);
+    application& operator = (const application&) = delete;
 
     // The application instance;  There should be only one.
     static application *instance;
@@ -299,9 +299,9 @@
 
     // No copying, at least not yet...
 
-    cli_application (const cli_application&);
+    cli_application (const cli_application&) = delete;
 
-    cli_application& operator = (const cli_application&);
+    cli_application& operator = (const cli_application&) = delete;
   };
 
   class OCTINTERP_API embedded_application : public application
@@ -326,9 +326,9 @@
 
     // No copying, at least not yet...
 
-    embedded_application (const embedded_application&);
+    embedded_application (const embedded_application&) = delete;
 
-    embedded_application& operator = (const embedded_application&);
+    embedded_application& operator = (const embedded_application&) = delete;
   };
 }
 
--- a/libinterp/parse-tree/lex.h	Mon Dec 05 21:04:07 2016 -0500
+++ b/libinterp/parse-tree/lex.h	Mon Dec 05 22:59:37 2016 -0500
@@ -260,9 +260,9 @@
 
       // No copying!
 
-      token_cache (const token_cache&);
+      token_cache (const token_cache&) = delete;
 
-      token_cache& operator = (const token_cache&);
+      token_cache& operator = (const token_cache&) = delete;
     };
 
     lexical_feedback (void)
@@ -464,9 +464,9 @@
 
     // No copying!
 
-    lexical_feedback (const lexical_feedback&);
+    lexical_feedback (const lexical_feedback&) = delete;
 
-    lexical_feedback& operator = (const lexical_feedback&);
+    lexical_feedback& operator = (const lexical_feedback&) = delete;
   };
 
   // base_lexer inherits from lexical_feedback because we will
@@ -712,9 +712,9 @@
 
     // No copying!
 
-    base_lexer (const base_lexer&);
+    base_lexer (const base_lexer&) = delete;
 
-    base_lexer& operator = (const base_lexer&);
+    base_lexer& operator = (const base_lexer&) = delete;
   };
 
   class
@@ -778,9 +778,9 @@
 
     // No copying!
 
-    lexer (const lexer&);
+    lexer (const lexer&) = delete;
 
-    lexer& operator = (const lexer&);
+    lexer& operator = (const lexer&) = delete;
   };
 
   class
@@ -851,9 +851,9 @@
 
     // No copying!
 
-    push_lexer (const push_lexer&);
+    push_lexer (const push_lexer&) = delete;
 
-    push_lexer& operator = (const push_lexer&);
+    push_lexer& operator = (const push_lexer&) = delete;
   };
 }
 
--- a/libinterp/parse-tree/parse.h	Mon Dec 05 21:04:07 2016 -0500
+++ b/libinterp/parse-tree/parse.h	Mon Dec 05 22:59:37 2016 -0500
@@ -465,9 +465,9 @@
 
     // No copying!
 
-    base_parser (const base_parser&);
+    base_parser (const base_parser&) = delete;
 
-    base_parser& operator = (const base_parser&);
+    base_parser& operator = (const base_parser&) = delete;
   };
 
   class
@@ -499,9 +499,9 @@
 
     // No copying!
 
-    parser (const parser&);
+    parser (const parser&) = delete;
 
-    parser& operator = (const parser&);
+    parser& operator = (const parser&) = delete;
   };
 
   class
@@ -521,9 +521,9 @@
 
     // No copying!
 
-    push_parser (const push_parser&);
+    push_parser (const push_parser&) = delete;
 
-    push_parser& operator = (const push_parser&);
+    push_parser& operator = (const push_parser&) = delete;
   };
 }
 
--- a/libinterp/parse-tree/pt-arg-list.h	Mon Dec 05 21:04:07 2016 -0500
+++ b/libinterp/parse-tree/pt-arg-list.h	Mon Dec 05 22:59:37 2016 -0500
@@ -104,9 +104,9 @@
 
   // No copying!
 
-  tree_argument_list (const tree_argument_list&);
+  tree_argument_list (const tree_argument_list&) = delete;
 
-  tree_argument_list& operator = (const tree_argument_list&);
+  tree_argument_list& operator = (const tree_argument_list&) = delete;
 };
 
 #endif
--- a/libinterp/parse-tree/pt-array-list.h	Mon Dec 05 21:04:07 2016 -0500
+++ b/libinterp/parse-tree/pt-array-list.h	Mon Dec 05 22:59:37 2016 -0500
@@ -76,9 +76,9 @@
 
   // No copying!
 
-  tree_array_list (const tree_array_list&);
+  tree_array_list (const tree_array_list&) = delete;
 
-  tree_array_list& operator = (const tree_array_list&);
+  tree_array_list& operator = (const tree_array_list&) = delete;
 };
 
 #endif
--- a/libinterp/parse-tree/pt-assign.h	Mon Dec 05 21:04:07 2016 -0500
+++ b/libinterp/parse-tree/pt-assign.h	Mon Dec 05 22:59:37 2016 -0500
@@ -104,9 +104,9 @@
 
   // No copying!
 
-  tree_simple_assignment (const tree_simple_assignment&);
+  tree_simple_assignment (const tree_simple_assignment&) = delete;
 
-  tree_simple_assignment& operator = (const tree_simple_assignment&);
+  tree_simple_assignment& operator = (const tree_simple_assignment&) = delete;
 };
 
 // Multi-valued assignment expressions.
@@ -161,9 +161,9 @@
 
   // No copying!
 
-  tree_multi_assignment (const tree_multi_assignment&);
+  tree_multi_assignment (const tree_multi_assignment&) = delete;
 
-  tree_multi_assignment& operator = (const tree_multi_assignment&);
+  tree_multi_assignment& operator = (const tree_multi_assignment&) = delete;
 };
 
 #endif
--- a/libinterp/parse-tree/pt-binop.h	Mon Dec 05 21:04:07 2016 -0500
+++ b/libinterp/parse-tree/pt-binop.h	Mon Dec 05 22:59:37 2016 -0500
@@ -127,9 +127,9 @@
 
   // No copying!
 
-  tree_binary_expression (const tree_binary_expression&);
+  tree_binary_expression (const tree_binary_expression&) = delete;
 
-  tree_binary_expression& operator = (const tree_binary_expression&);
+  tree_binary_expression& operator = (const tree_binary_expression&) = delete;
 };
 
 // Boolean expressions.
@@ -177,9 +177,9 @@
 
   // No copying!
 
-  tree_boolean_expression (const tree_boolean_expression&);
+  tree_boolean_expression (const tree_boolean_expression&) = delete;
 
-  tree_boolean_expression& operator = (const tree_boolean_expression&);
+  tree_boolean_expression& operator = (const tree_boolean_expression&) = delete;
 };
 
 #endif
--- a/libinterp/parse-tree/pt-bp.h	Mon Dec 05 21:04:07 2016 -0500
+++ b/libinterp/parse-tree/pt-bp.h	Mon Dec 05 22:59:37 2016 -0500
@@ -170,9 +170,9 @@
 
   // No copying!
 
-  tree_breakpoint (const tree_breakpoint&);
+  tree_breakpoint (const tree_breakpoint&) = delete;
 
-  tree_breakpoint& operator = (const tree_breakpoint&);
+  tree_breakpoint& operator = (const tree_breakpoint&) = delete;
 };
 
 // TRUE means SIGINT should put us in the debugger at the next
--- a/libinterp/parse-tree/pt-cbinop.h	Mon Dec 05 21:04:07 2016 -0500
+++ b/libinterp/parse-tree/pt-cbinop.h	Mon Dec 05 22:59:37 2016 -0500
@@ -68,10 +68,10 @@
 
   // No copying!
 
-  tree_compound_binary_expression (const tree_compound_binary_expression&);
+  tree_compound_binary_expression (const tree_compound_binary_expression&) = delete;
 
   tree_compound_binary_expression& operator =
-    (const tree_compound_binary_expression&);
+    (const tree_compound_binary_expression&) = delete;
 };
 
 // a "virtual constructor"
--- a/libinterp/parse-tree/pt-cell.h	Mon Dec 05 21:04:07 2016 -0500
+++ b/libinterp/parse-tree/pt-cell.h	Mon Dec 05 22:59:37 2016 -0500
@@ -66,9 +66,9 @@
 
   // No copying!
 
-  tree_cell (const tree_cell&);
+  tree_cell (const tree_cell&) = delete;
 
-  tree_cell& operator = (const tree_cell&);
+  tree_cell& operator = (const tree_cell&) = delete;
 };
 
 #endif
--- a/libinterp/parse-tree/pt-check.h	Mon Dec 05 21:04:07 2016 -0500
+++ b/libinterp/parse-tree/pt-check.h	Mon Dec 05 22:59:37 2016 -0500
@@ -137,9 +137,9 @@
 
   // No copying!
 
-  tree_checker (const tree_checker&);
+  tree_checker (const tree_checker&) = delete;
 
-  tree_checker& operator = (const tree_checker&);
+  tree_checker& operator = (const tree_checker&) = delete;
 };
 
 #endif
--- a/libinterp/parse-tree/pt-classdef.h	Mon Dec 05 21:04:07 2016 -0500
+++ b/libinterp/parse-tree/pt-classdef.h	Mon Dec 05 22:59:37 2016 -0500
@@ -69,9 +69,9 @@
 
   // No copying!
 
-  tree_classdef_attribute (const tree_classdef_attribute&);
+  tree_classdef_attribute (const tree_classdef_attribute&) = delete;
 
-  tree_classdef_attribute& operator = (const tree_classdef_attribute&);
+  tree_classdef_attribute& operator = (const tree_classdef_attribute&) = delete;
 };
 
 class tree_classdef_attribute_list : public octave::base_list<tree_classdef_attribute *>
@@ -93,9 +93,9 @@
 
   // No copying!
 
-  tree_classdef_attribute_list (const tree_classdef_attribute_list&);
+  tree_classdef_attribute_list (const tree_classdef_attribute_list&) = delete;
 
-  tree_classdef_attribute_list& operator = (const tree_classdef_attribute_list&);
+  tree_classdef_attribute_list& operator = (const tree_classdef_attribute_list&) = delete;
 };
 
 class tree_classdef_superclass
@@ -117,9 +117,9 @@
 
   // No copying!
 
-  tree_classdef_superclass (const tree_classdef_superclass&);
+  tree_classdef_superclass (const tree_classdef_superclass&) = delete;
 
-  tree_classdef_superclass& operator = (const tree_classdef_superclass&);
+  tree_classdef_superclass& operator = (const tree_classdef_superclass&) = delete;
 };
 
 class tree_classdef_superclass_list : public octave::base_list<tree_classdef_superclass *>
@@ -141,9 +141,9 @@
 
   // No copying!
 
-  tree_classdef_superclass_list (const tree_classdef_superclass_list&);
+  tree_classdef_superclass_list (const tree_classdef_superclass_list&) = delete;
 
-  tree_classdef_superclass_list& operator = (const tree_classdef_superclass_list&);
+  tree_classdef_superclass_list& operator = (const tree_classdef_superclass_list&) = delete;
 };
 
 template <typename T>
@@ -193,9 +193,9 @@
 
   // No copying!
 
-  tree_classdef_element (const tree_classdef_element&);
+  tree_classdef_element (const tree_classdef_element&) = delete;
 
-  tree_classdef_element& operator = (const tree_classdef_element&);
+  tree_classdef_element& operator = (const tree_classdef_element&) = delete;
 };
 
 class tree_classdef_property
@@ -224,9 +224,9 @@
 
   // No copying!
 
-  tree_classdef_property (const tree_classdef_property&);
+  tree_classdef_property (const tree_classdef_property&) = delete;
 
-  tree_classdef_property& operator = (const tree_classdef_property&);
+  tree_classdef_property& operator = (const tree_classdef_property&) = delete;
 };
 
 class tree_classdef_property_list : public octave::base_list<tree_classdef_property *>
@@ -248,9 +248,9 @@
 
   // No copying!
 
-  tree_classdef_property_list (const tree_classdef_property_list&);
+  tree_classdef_property_list (const tree_classdef_property_list&) = delete;
 
-  tree_classdef_property_list& operator = (const tree_classdef_property_list&);
+  tree_classdef_property_list& operator = (const tree_classdef_property_list&) = delete;
 };
 
 class tree_classdef_properties_block
@@ -273,9 +273,9 @@
 
   // No copying!
 
-  tree_classdef_properties_block (const tree_classdef_properties_block&);
+  tree_classdef_properties_block (const tree_classdef_properties_block&) = delete;
 
-  tree_classdef_properties_block& operator = (const tree_classdef_properties_block&);
+  tree_classdef_properties_block& operator = (const tree_classdef_properties_block&) = delete;
 };
 
 class tree_classdef_methods_list : public octave::base_list<octave_value>
@@ -297,9 +297,9 @@
 
   // No copying!
 
-  tree_classdef_methods_list (const tree_classdef_methods_list&);
+  tree_classdef_methods_list (const tree_classdef_methods_list&) = delete;
 
-  tree_classdef_methods_list& operator = (const tree_classdef_methods_list&);
+  tree_classdef_methods_list& operator = (const tree_classdef_methods_list&) = delete;
 };
 
 class tree_classdef_methods_block : public tree_classdef_element<octave_value>
@@ -320,9 +320,9 @@
 
   // No copying!
 
-  tree_classdef_methods_block (const tree_classdef_methods_block&);
+  tree_classdef_methods_block (const tree_classdef_methods_block&) = delete;
 
-  tree_classdef_methods_block& operator = (const tree_classdef_methods_block&);
+  tree_classdef_methods_block& operator = (const tree_classdef_methods_block&) = delete;
 };
 
 class tree_classdef_event
@@ -346,9 +346,9 @@
 
   // No copying!
 
-  tree_classdef_event (const tree_classdef_event&);
+  tree_classdef_event (const tree_classdef_event&) = delete;
 
-  tree_classdef_event& operator = (const tree_classdef_event&);
+  tree_classdef_event& operator = (const tree_classdef_event&) = delete;
 };
 
 class tree_classdef_events_list : public octave::base_list<tree_classdef_event *>
@@ -370,9 +370,9 @@
 
   // No copying!
 
-  tree_classdef_events_list (const tree_classdef_events_list&);
+  tree_classdef_events_list (const tree_classdef_events_list&) = delete;
 
-  tree_classdef_events_list& operator = (const tree_classdef_events_list&);
+  tree_classdef_events_list& operator = (const tree_classdef_events_list&) = delete;
 };
 
 class tree_classdef_events_block
@@ -394,9 +394,9 @@
 
   // No copying!
 
-  tree_classdef_events_block (const tree_classdef_events_block&);
+  tree_classdef_events_block (const tree_classdef_events_block&) = delete;
 
-  tree_classdef_events_block& operator = (const tree_classdef_events_block&);
+  tree_classdef_events_block& operator = (const tree_classdef_events_block&) = delete;
 };
 
 class tree_classdef_enum
@@ -427,9 +427,9 @@
 
   // No copying!
 
-  tree_classdef_enum (const tree_classdef_enum&);
+  tree_classdef_enum (const tree_classdef_enum&) = delete;
 
-  tree_classdef_enum& operator = (const tree_classdef_enum&);
+  tree_classdef_enum& operator = (const tree_classdef_enum&) = delete;
 };
 
 class tree_classdef_enum_list : public octave::base_list<tree_classdef_enum *>
@@ -451,9 +451,9 @@
 
   // No copying!
 
-  tree_classdef_enum_list (const tree_classdef_enum_list&);
+  tree_classdef_enum_list (const tree_classdef_enum_list&) = delete;
 
-  tree_classdef_enum_list& operator = (const tree_classdef_enum_list&);
+  tree_classdef_enum_list& operator = (const tree_classdef_enum_list&) = delete;
 };
 
 class tree_classdef_enum_block
@@ -475,9 +475,9 @@
 
   // No copying!
 
-  tree_classdef_enum_block (const tree_classdef_enum_block&);
+  tree_classdef_enum_block (const tree_classdef_enum_block&) = delete;
 
-  tree_classdef_enum_block& operator = (const tree_classdef_enum_block&);
+  tree_classdef_enum_block& operator = (const tree_classdef_enum_block&) = delete;
 };
 
 class tree_classdef_body
@@ -579,9 +579,9 @@
 
   // No copying!
 
-  tree_classdef_body (const tree_classdef_body&);
+  tree_classdef_body (const tree_classdef_body&) = delete;
 
-  tree_classdef_body& operator = (const tree_classdef_body&);
+  tree_classdef_body& operator = (const tree_classdef_body&) = delete;
 };
 
 // Classdef definition.
@@ -647,9 +647,9 @@
 
   // No copying!
 
-  tree_classdef (const tree_classdef&);
+  tree_classdef (const tree_classdef&) = delete;
 
-  tree_classdef& operator = (const tree_classdef&);
+  tree_classdef& operator = (const tree_classdef&) = delete;
 };
 
 #endif
--- a/libinterp/parse-tree/pt-cmd.h	Mon Dec 05 21:04:07 2016 -0500
+++ b/libinterp/parse-tree/pt-cmd.h	Mon Dec 05 22:59:37 2016 -0500
@@ -53,9 +53,9 @@
 
   // No copying!
 
-  tree_command (const tree_command&);
+  tree_command (const tree_command&) = delete;
 
-  tree_command& operator = (const tree_command&);
+  tree_command& operator = (const tree_command&) = delete;
 };
 
 // No-op.
@@ -93,9 +93,9 @@
 
   // No copying!
 
-  tree_no_op_command (const tree_no_op_command&);
+  tree_no_op_command (const tree_no_op_command&) = delete;
 
-  tree_no_op_command& operator = (const tree_no_op_command&);
+  tree_no_op_command& operator = (const tree_no_op_command&) = delete;
 };
 
 // Function definition.
@@ -126,9 +126,9 @@
 
   // No copying!
 
-  tree_function_def (const tree_function_def&);
+  tree_function_def (const tree_function_def&) = delete;
 
-  tree_function_def& operator = (const tree_function_def&);
+  tree_function_def& operator = (const tree_function_def&) = delete;
 };
 
 #endif
--- a/libinterp/parse-tree/pt-colon.h	Mon Dec 05 21:04:07 2016 -0500
+++ b/libinterp/parse-tree/pt-colon.h	Mon Dec 05 22:59:37 2016 -0500
@@ -109,9 +109,9 @@
 
   // No copying!
 
-  tree_colon_expression (const tree_colon_expression&);
+  tree_colon_expression (const tree_colon_expression&) = delete;
 
-  tree_colon_expression& operator = (const tree_colon_expression&);
+  tree_colon_expression& operator = (const tree_colon_expression&) = delete;
 };
 
 #endif
--- a/libinterp/parse-tree/pt-const.h	Mon Dec 05 21:04:07 2016 -0500
+++ b/libinterp/parse-tree/pt-const.h	Mon Dec 05 22:59:37 2016 -0500
@@ -96,9 +96,9 @@
 
   // No copying!
 
-  tree_constant (const tree_constant&);
+  tree_constant (const tree_constant&) = delete;
 
-  tree_constant& operator = (const tree_constant&);
+  tree_constant& operator = (const tree_constant&) = delete;
 
 };
 
--- a/libinterp/parse-tree/pt-decl.h	Mon Dec 05 21:04:07 2016 -0500
+++ b/libinterp/parse-tree/pt-decl.h	Mon Dec 05 22:59:37 2016 -0500
@@ -105,9 +105,9 @@
 
   // No copying!
 
-  tree_decl_elt (const tree_decl_elt&);
+  tree_decl_elt (const tree_decl_elt&) = delete;
 
-  tree_decl_elt& operator = (const tree_decl_elt&);
+  tree_decl_elt& operator = (const tree_decl_elt&) = delete;
 };
 
 class
@@ -138,9 +138,9 @@
 
   // No copying!
 
-  tree_decl_init_list (const tree_decl_init_list&);
+  tree_decl_init_list (const tree_decl_init_list&) = delete;
 
-  tree_decl_init_list& operator = (const tree_decl_init_list&);
+  tree_decl_init_list& operator = (const tree_decl_init_list&) = delete;
 };
 
 // Base class for declaration commands -- global, static, etc.
@@ -175,9 +175,9 @@
 
   // No copying!
 
-  tree_decl_command (const tree_decl_command&);
+  tree_decl_command (const tree_decl_command&) = delete;
 
-  tree_decl_command& operator = (const tree_decl_command&);
+  tree_decl_command& operator = (const tree_decl_command&) = delete;
 };
 
 // Global.
@@ -206,9 +206,9 @@
 
   // No copying!
 
-  tree_global_command (const tree_global_command&);
+  tree_global_command (const tree_global_command&) = delete;
 
-  tree_global_command& operator = (const tree_global_command&);
+  tree_global_command& operator = (const tree_global_command&) = delete;
 };
 
 // Persistent.
@@ -237,9 +237,9 @@
 
   // No copying!
 
-  tree_persistent_command (const tree_persistent_command&);
+  tree_persistent_command (const tree_persistent_command&) = delete;
 
-  tree_persistent_command& operator = (const tree_persistent_command&);
+  tree_persistent_command& operator = (const tree_persistent_command&) = delete;
 };
 
 #endif
--- a/libinterp/parse-tree/pt-eval.h	Mon Dec 05 21:04:07 2016 -0500
+++ b/libinterp/parse-tree/pt-eval.h	Mon Dec 05 22:59:37 2016 -0500
@@ -192,9 +192,9 @@
 
     // No copying!
 
-    tree_evaluator (const tree_evaluator&);
+    tree_evaluator (const tree_evaluator&) = delete;
 
-    tree_evaluator& operator = (const tree_evaluator&);
+    tree_evaluator& operator = (const tree_evaluator&) = delete;
   };
 }
 
--- a/libinterp/parse-tree/pt-except.h	Mon Dec 05 21:04:07 2016 -0500
+++ b/libinterp/parse-tree/pt-except.h	Mon Dec 05 22:59:37 2016 -0500
@@ -95,9 +95,9 @@
 
   // No copying!
 
-  tree_try_catch_command (const tree_try_catch_command&);
+  tree_try_catch_command (const tree_try_catch_command&) = delete;
 
-  tree_try_catch_command& operator = (const tree_try_catch_command&);
+  tree_try_catch_command& operator = (const tree_try_catch_command&) = delete;
 };
 
 // Simple exception handling.
@@ -157,9 +157,9 @@
 
   // No copying!
 
-  tree_unwind_protect_command (const tree_unwind_protect_command&);
+  tree_unwind_protect_command (const tree_unwind_protect_command&) = delete;
 
-  tree_unwind_protect_command& operator = (const tree_unwind_protect_command&);
+  tree_unwind_protect_command& operator = (const tree_unwind_protect_command&) = delete;
 };
 
 #endif
--- a/libinterp/parse-tree/pt-exp.h	Mon Dec 05 21:04:07 2016 -0500
+++ b/libinterp/parse-tree/pt-exp.h	Mon Dec 05 22:59:37 2016 -0500
@@ -161,9 +161,9 @@
 
   // No copying!
 
-  tree_expression (const tree_expression&);
+  tree_expression (const tree_expression&) = delete;
 
-  tree_expression& operator = (const tree_expression&);
+  tree_expression& operator = (const tree_expression&) = delete;
 };
 
 #endif
--- a/libinterp/parse-tree/pt-fcn-handle.h	Mon Dec 05 21:04:07 2016 -0500
+++ b/libinterp/parse-tree/pt-fcn-handle.h	Mon Dec 05 22:59:37 2016 -0500
@@ -83,9 +83,9 @@
 
   // No copying!
 
-  tree_fcn_handle (const tree_fcn_handle&);
+  tree_fcn_handle (const tree_fcn_handle&) = delete;
 
-  tree_fcn_handle& operator = (const tree_fcn_handle&);
+  tree_fcn_handle& operator = (const tree_fcn_handle&) = delete;
 };
 
 class
@@ -150,9 +150,9 @@
 
   // No copying!
 
-  tree_anon_fcn_handle (const tree_anon_fcn_handle&);
+  tree_anon_fcn_handle (const tree_anon_fcn_handle&) = delete;
 
-  tree_anon_fcn_handle& operator = (const tree_anon_fcn_handle&);
+  tree_anon_fcn_handle& operator = (const tree_anon_fcn_handle&) = delete;
 };
 
 #endif
--- a/libinterp/parse-tree/pt-funcall.h	Mon Dec 05 21:04:07 2016 -0500
+++ b/libinterp/parse-tree/pt-funcall.h	Mon Dec 05 22:59:37 2016 -0500
@@ -92,9 +92,9 @@
 
   // No copying!
 
-  tree_funcall (const tree_funcall&);
+  tree_funcall (const tree_funcall&) = delete;
 
-  tree_funcall& operator = (const tree_funcall&);
+  tree_funcall& operator = (const tree_funcall&) = delete;
 };
 
 #endif
--- a/libinterp/parse-tree/pt-id.h	Mon Dec 05 21:04:07 2016 -0500
+++ b/libinterp/parse-tree/pt-id.h	Mon Dec 05 22:59:37 2016 -0500
@@ -140,9 +140,9 @@
 
   // No copying!
 
-  tree_identifier (const tree_identifier&);
+  tree_identifier (const tree_identifier&) = delete;
 
-  tree_identifier& operator = (const tree_identifier&);
+  tree_identifier& operator = (const tree_identifier&) = delete;
 };
 
 class tree_black_hole : public tree_identifier
--- a/libinterp/parse-tree/pt-idx.h	Mon Dec 05 21:04:07 2016 -0500
+++ b/libinterp/parse-tree/pt-idx.h	Mon Dec 05 22:59:37 2016 -0500
@@ -126,9 +126,9 @@
 
   // No copying!
 
-  tree_index_expression (const tree_index_expression&);
+  tree_index_expression (const tree_index_expression&) = delete;
 
-  tree_index_expression& operator = (const tree_index_expression&);
+  tree_index_expression& operator = (const tree_index_expression&) = delete;
 };
 
 #endif
--- a/libinterp/parse-tree/pt-jump.h	Mon Dec 05 21:04:07 2016 -0500
+++ b/libinterp/parse-tree/pt-jump.h	Mon Dec 05 22:59:37 2016 -0500
@@ -53,9 +53,9 @@
 
   // No copying!
 
-  tree_break_command (const tree_break_command&);
+  tree_break_command (const tree_break_command&) = delete;
 
-  tree_break_command& operator = (const tree_break_command&);
+  tree_break_command& operator = (const tree_break_command&) = delete;
 };
 
 // Continue.
@@ -81,9 +81,9 @@
 
   // No copying!
 
-  tree_continue_command (const tree_continue_command&);
+  tree_continue_command (const tree_continue_command&) = delete;
 
-  tree_continue_command& operator = (const tree_continue_command&);
+  tree_continue_command& operator = (const tree_continue_command&) = delete;
 };
 
 // Return.
@@ -109,9 +109,9 @@
 
   // No copying!
 
-  tree_return_command (const tree_return_command&);
+  tree_return_command (const tree_return_command&) = delete;
 
-  tree_return_command& operator = (const tree_return_command&);
+  tree_return_command& operator = (const tree_return_command&) = delete;
 };
 
 #endif
--- a/libinterp/parse-tree/pt-loop.h	Mon Dec 05 21:04:07 2016 -0500
+++ b/libinterp/parse-tree/pt-loop.h	Mon Dec 05 22:59:37 2016 -0500
@@ -128,9 +128,9 @@
 
   // No copying!
 
-  tree_while_command (const tree_while_command&);
+  tree_while_command (const tree_while_command&) = delete;
 
-  tree_while_command& operator = (const tree_while_command&);
+  tree_while_command& operator = (const tree_while_command&) = delete;
 };
 
 // Do-Until.
@@ -166,9 +166,9 @@
 
   // No copying!
 
-  tree_do_until_command (const tree_do_until_command&);
+  tree_do_until_command (const tree_do_until_command&) = delete;
 
-  tree_do_until_command& operator = (const tree_do_until_command&);
+  tree_do_until_command& operator = (const tree_do_until_command&) = delete;
 };
 
 // For.
@@ -264,9 +264,9 @@
 
   // No copying!
 
-  tree_simple_for_command (const tree_simple_for_command&);
+  tree_simple_for_command (const tree_simple_for_command&) = delete;
 
-  tree_simple_for_command& operator = (const tree_simple_for_command&);
+  tree_simple_for_command& operator = (const tree_simple_for_command&) = delete;
 };
 
 class
@@ -322,9 +322,9 @@
 
   // No copying!
 
-  tree_complex_for_command (const tree_complex_for_command&);
+  tree_complex_for_command (const tree_complex_for_command&) = delete;
 
-  tree_complex_for_command& operator = (const tree_complex_for_command&);
+  tree_complex_for_command& operator = (const tree_complex_for_command&) = delete;
 };
 
 #endif
--- a/libinterp/parse-tree/pt-mat.h	Mon Dec 05 21:04:07 2016 -0500
+++ b/libinterp/parse-tree/pt-mat.h	Mon Dec 05 22:59:37 2016 -0500
@@ -69,9 +69,9 @@
 
   // No copying!
 
-  tree_matrix (const tree_matrix&);
+  tree_matrix (const tree_matrix&) = delete;
 
-  tree_matrix& operator = (const tree_matrix&);
+  tree_matrix& operator = (const tree_matrix&) = delete;
 };
 
 // The character to fill with when creating string arrays.
--- a/libinterp/parse-tree/pt-misc.h	Mon Dec 05 21:04:07 2016 -0500
+++ b/libinterp/parse-tree/pt-misc.h	Mon Dec 05 22:59:37 2016 -0500
@@ -103,9 +103,9 @@
 
   // No copying!
 
-  tree_parameter_list (const tree_parameter_list&);
+  tree_parameter_list (const tree_parameter_list&) = delete;
 
-  tree_parameter_list& operator = (const tree_parameter_list&);
+  tree_parameter_list& operator = (const tree_parameter_list&) = delete;
 };
 
 // Return lists.  Used to hold the right hand sides of multiple
@@ -131,9 +131,9 @@
 
   // No copying!
 
-  tree_return_list (const tree_return_list&);
+  tree_return_list (const tree_return_list&) = delete;
 
-  tree_return_list& operator = (const tree_return_list&);
+  tree_return_list& operator = (const tree_return_list&) = delete;
 };
 
 class
@@ -149,9 +149,9 @@
 
   // No copying!
 
-  tree_va_return_list (const tree_va_return_list&);
+  tree_va_return_list (const tree_va_return_list&) = delete;
 
-  tree_va_return_list& operator = (const tree_va_return_list&);
+  tree_va_return_list& operator = (const tree_va_return_list&) = delete;
 };
 
 #endif
--- a/libinterp/parse-tree/pt-pr-code.h	Mon Dec 05 21:04:07 2016 -0500
+++ b/libinterp/parse-tree/pt-pr-code.h	Mon Dec 05 22:59:37 2016 -0500
@@ -192,9 +192,9 @@
 
   // No copying!
 
-  tree_print_code (const tree_print_code&);
+  tree_print_code (const tree_print_code&) = delete;
 
-  tree_print_code& operator = (const tree_print_code&);
+  tree_print_code& operator = (const tree_print_code&) = delete;
 };
 
 #endif
--- a/libinterp/parse-tree/pt-select.h	Mon Dec 05 21:04:07 2016 -0500
+++ b/libinterp/parse-tree/pt-select.h	Mon Dec 05 22:59:37 2016 -0500
@@ -82,9 +82,9 @@
 
   // No copying!
 
-  tree_if_clause (const tree_if_clause&);
+  tree_if_clause (const tree_if_clause&) = delete;
 
-  tree_if_clause& operator = (const tree_if_clause&);
+  tree_if_clause& operator = (const tree_if_clause&) = delete;
 };
 
 class
@@ -115,9 +115,9 @@
 
   // No copying!
 
-  tree_if_command_list (const tree_if_command_list&);
+  tree_if_command_list (const tree_if_command_list&) = delete;
 
-  tree_if_command_list& operator = (const tree_if_command_list&);
+  tree_if_command_list& operator = (const tree_if_command_list&) = delete;
 };
 
 class
@@ -158,9 +158,9 @@
 
   // No copying!
 
-  tree_if_command (const tree_if_command&);
+  tree_if_command (const tree_if_command&) = delete;
 
-  tree_if_command& operator = (const tree_if_command&);
+  tree_if_command& operator = (const tree_if_command&) = delete;
 };
 
 // Switch.
@@ -212,9 +212,9 @@
 
   // No copying!
 
-  tree_switch_case (const tree_switch_case&);
+  tree_switch_case (const tree_switch_case&) = delete;
 
-  tree_switch_case& operator = (const tree_switch_case&);
+  tree_switch_case& operator = (const tree_switch_case&) = delete;
 };
 
 class
@@ -245,9 +245,9 @@
 
   // No copying!
 
-  tree_switch_case_list (const tree_switch_case_list&);
+  tree_switch_case_list (const tree_switch_case_list&) = delete;
 
-  tree_switch_case_list& operator = (const tree_switch_case_list&);
+  tree_switch_case_list& operator = (const tree_switch_case_list&) = delete;
 };
 
 class
@@ -296,9 +296,9 @@
 
   // No copying!
 
-  tree_switch_command (const tree_switch_command&);
+  tree_switch_command (const tree_switch_command&) = delete;
 
-  tree_switch_command& operator = (const tree_switch_command&);
+  tree_switch_command& operator = (const tree_switch_command&) = delete;
 };
 
 #endif
--- a/libinterp/parse-tree/pt-stmt.h	Mon Dec 05 21:04:07 2016 -0500
+++ b/libinterp/parse-tree/pt-stmt.h	Mon Dec 05 22:59:37 2016 -0500
@@ -120,9 +120,10 @@
   octave_comment_list *comm;
 
   // No copying!
-  tree_statement (const tree_statement&);
 
-  tree_statement& operator = (const tree_statement&);
+  tree_statement (const tree_statement&) = delete;
+
+  tree_statement& operator = (const tree_statement&) = delete;
 };
 
 // A list of statements to evaluate.
@@ -194,9 +195,9 @@
 
   // No copying!
 
-  tree_statement_list (const tree_statement_list&);
+  tree_statement_list (const tree_statement_list&) = delete;
 
-  tree_statement_list& operator = (const tree_statement_list&);
+  tree_statement_list& operator = (const tree_statement_list&) = delete;
 };
 
 #endif
--- a/libinterp/parse-tree/pt-unop.h	Mon Dec 05 21:04:07 2016 -0500
+++ b/libinterp/parse-tree/pt-unop.h	Mon Dec 05 22:59:37 2016 -0500
@@ -77,9 +77,9 @@
 
   // No copying!
 
-  tree_unary_expression (const tree_unary_expression&);
+  tree_unary_expression (const tree_unary_expression&) = delete;
 
-  tree_unary_expression& operator = (const tree_unary_expression&);
+  tree_unary_expression& operator = (const tree_unary_expression&) = delete;
 };
 
 // Prefix expressions.
@@ -116,9 +116,9 @@
 
   // No copying!
 
-  tree_prefix_expression (const tree_prefix_expression&);
+  tree_prefix_expression (const tree_prefix_expression&) = delete;
 
-  tree_prefix_expression& operator = (const tree_prefix_expression&);
+  tree_prefix_expression& operator = (const tree_prefix_expression&) = delete;
 };
 
 // Postfix expressions.
@@ -155,9 +155,9 @@
 
   // No copying!
 
-  tree_postfix_expression (const tree_postfix_expression&);
+  tree_postfix_expression (const tree_postfix_expression&) = delete;
 
-  tree_postfix_expression& operator = (const tree_postfix_expression&);
+  tree_postfix_expression& operator = (const tree_postfix_expression&) = delete;
 };
 
 #endif
--- a/libinterp/parse-tree/pt-walk.h	Mon Dec 05 21:04:07 2016 -0500
+++ b/libinterp/parse-tree/pt-walk.h	Mon Dec 05 22:59:37 2016 -0500
@@ -278,9 +278,9 @@
 
   // No copying!
 
-  tree_walker (const tree_walker&);
+  tree_walker (const tree_walker&) = delete;
 
-  tree_walker& operator = (const tree_walker&);
+  tree_walker& operator = (const tree_walker&) = delete;
 };
 
 #endif
--- a/libinterp/parse-tree/pt.h	Mon Dec 05 21:04:07 2016 -0500
+++ b/libinterp/parse-tree/pt.h	Mon Dec 05 22:59:37 2016 -0500
@@ -96,9 +96,9 @@
 
   // No copying!
 
-  tree (const tree&);
+  tree (const tree&) = delete;
 
-  tree& operator = (const tree&);
+  tree& operator = (const tree&) = delete;
 };
 
 #endif
--- a/libinterp/parse-tree/token.h	Mon Dec 05 21:04:07 2016 -0500
+++ b/libinterp/parse-tree/token.h	Mon Dec 05 22:59:37 2016 -0500
@@ -114,9 +114,9 @@
 
   // No copying!
 
-  token (const token& tok);
+  token (const token& tok) = delete;
 
-  token& operator = (const token& tok);
+  token& operator = (const token& tok) = delete;
 
   bool maybe_cmd;
   bool tspc;
--- a/liboctave/array/Array.cc	Mon Dec 05 21:04:07 2016 -0500
+++ b/liboctave/array/Array.cc	Mon Dec 05 22:59:37 2016 -0500
@@ -436,9 +436,9 @@
 
   // No copying!
 
-  rec_permute_helper (const rec_permute_helper&);
-
-  rec_permute_helper& operator = (const rec_permute_helper&);
+  rec_permute_helper (const rec_permute_helper&) = delete;
+
+  rec_permute_helper& operator = (const rec_permute_helper&) = delete;
 
 public:
 
@@ -617,9 +617,9 @@
 
   // No copying!
 
-  rec_index_helper (const rec_index_helper&);
-
-  rec_index_helper& operator = (const rec_index_helper&);
+  rec_index_helper (const rec_index_helper&) = delete;
+
+  rec_index_helper& operator = (const rec_index_helper&) = delete;
 
 public:
 
@@ -702,9 +702,9 @@
 
   // No copying!
 
-  rec_resize_helper (const rec_resize_helper&);
-
-  rec_resize_helper& operator = (const rec_resize_helper&);
+  rec_resize_helper (const rec_resize_helper&) = delete;
+
+  rec_resize_helper& operator = (const rec_resize_helper&) = delete;
 
 public:
 
--- a/liboctave/array/idx-vector.h	Mon Dec 05 21:04:07 2016 -0500
+++ b/liboctave/array/idx-vector.h	Mon Dec 05 22:59:37 2016 -0500
@@ -114,8 +114,10 @@
   private:
 
     // No copying!
-    idx_base_rep (const idx_base_rep&);
-    idx_base_rep& operator = (const idx_base_rep&);
+
+    idx_base_rep (const idx_base_rep&) = delete;
+
+    idx_base_rep& operator = (const idx_base_rep&) = delete;
   };
 
   // The magic colon index.
@@ -148,8 +150,10 @@
   private:
 
     // No copying!
-    idx_colon_rep (const idx_colon_rep& idx);
-    idx_colon_rep& operator = (const idx_colon_rep& idx);
+
+    idx_colon_rep (const idx_colon_rep& idx) = delete;
+
+    idx_colon_rep& operator = (const idx_colon_rep& idx) = delete;
   };
 
   // To distinguish the "direct" constructors that blindly trust the data.
@@ -210,8 +214,10 @@
   private:
 
     // No copying!
-    idx_range_rep (const idx_range_rep& idx);
-    idx_range_rep& operator = (const idx_range_rep& idx);
+
+    idx_range_rep (const idx_range_rep& idx) = delete;
+
+    idx_range_rep& operator = (const idx_range_rep& idx) = delete;
 
     octave_idx_type start, len, step;
 
@@ -265,8 +271,10 @@
   private:
 
     // No copying!
-    idx_scalar_rep (const idx_scalar_rep& idx);
-    idx_scalar_rep& operator = (const idx_scalar_rep& idx);
+
+    idx_scalar_rep (const idx_scalar_rep& idx) = delete;
+
+    idx_scalar_rep& operator = (const idx_scalar_rep& idx) = delete;
 
     octave_idx_type data;
 
@@ -330,8 +338,10 @@
   private:
 
     // No copying!
-    idx_vector_rep (const idx_vector_rep& idx);
-    idx_vector_rep& operator = (const idx_vector_rep& idx);
+
+    idx_vector_rep (const idx_vector_rep& idx) = delete;
+
+    idx_vector_rep& operator = (const idx_vector_rep& idx) = delete;
 
     const octave_idx_type *data;
     octave_idx_type len;
@@ -402,8 +412,10 @@
   private:
 
     // No copying!
-    idx_mask_rep (const idx_mask_rep& idx);
-    idx_mask_rep& operator = (const idx_mask_rep& idx);
+
+    idx_mask_rep (const idx_mask_rep& idx) = delete;
+
+    idx_mask_rep& operator = (const idx_mask_rep& idx) = delete;
 
     const bool *data;
     octave_idx_type len;
--- a/liboctave/numeric/oct-fftw.h	Mon Dec 05 21:04:07 2016 -0500
+++ b/liboctave/numeric/oct-fftw.h	Mon Dec 05 22:59:37 2016 -0500
@@ -102,9 +102,9 @@
 
   // No copying!
 
-  octave_fftw_planner (const octave_fftw_planner&);
+  octave_fftw_planner (const octave_fftw_planner&) = delete;
 
-  octave_fftw_planner& operator = (const octave_fftw_planner&);
+  octave_fftw_planner& operator = (const octave_fftw_planner&) = delete;
 
   static octave_fftw_planner *instance;
 
@@ -247,9 +247,9 @@
 
   // No copying!
 
-  octave_float_fftw_planner (const octave_float_fftw_planner&);
+  octave_float_fftw_planner (const octave_float_fftw_planner&) = delete;
 
-  octave_float_fftw_planner& operator = (const octave_float_fftw_planner&);
+  octave_float_fftw_planner& operator = (const octave_float_fftw_planner&) = delete;
 
   static octave_float_fftw_planner *instance;
 
--- a/liboctave/numeric/sparse-chol.cc	Mon Dec 05 21:04:07 2016 -0500
+++ b/liboctave/numeric/sparse-chol.cc	Mon Dec 05 22:59:37 2016 -0500
@@ -128,9 +128,9 @@
 
       // No copying!
 
-      sparse_chol_rep (const sparse_chol_rep&);
+      sparse_chol_rep (const sparse_chol_rep&) = delete;
 
-      sparse_chol_rep& operator = (const sparse_chol_rep&);
+      sparse_chol_rep& operator = (const sparse_chol_rep&) = delete;
     };
 
 #if defined (HAVE_CHOLMOD)
--- a/liboctave/numeric/sparse-qr.cc	Mon Dec 05 21:04:07 2016 -0500
+++ b/liboctave/numeric/sparse-qr.cc	Mon Dec 05 22:59:37 2016 -0500
@@ -120,9 +120,9 @@
 
       // No copying!
 
-      sparse_qr_rep (const sparse_qr_rep&);
-
-      sparse_qr_rep& operator = (const sparse_qr_rep&);
+      sparse_qr_rep (const sparse_qr_rep&) = delete;
+
+      sparse_qr_rep& operator = (const sparse_qr_rep&) = delete;
     };
 
     template <typename SPARSE_T>
--- a/liboctave/system/file-ops.h	Mon Dec 05 21:04:07 2016 -0500
+++ b/liboctave/system/file-ops.h	Mon Dec 05 22:59:37 2016 -0500
@@ -133,9 +133,9 @@
 
       // No copying!
 
-      file_ops (const file_ops&);
+      file_ops (const file_ops&) = delete;
 
-      file_ops& operator = (const file_ops&);
+      file_ops& operator = (const file_ops&) = delete;
 
       static bool instance_ok (void);
 
--- a/liboctave/system/mach-info.h	Mon Dec 05 21:04:07 2016 -0500
+++ b/liboctave/system/mach-info.h	Mon Dec 05 22:59:37 2016 -0500
@@ -72,9 +72,9 @@
 
     // No copying!
 
-    mach_info (const mach_info&);
+    mach_info (const mach_info&) = delete;
 
-    mach_info& operator = (const mach_info&);
+    mach_info& operator = (const mach_info&) = delete;
   };
 }
 
--- a/liboctave/system/oct-env.h	Mon Dec 05 21:04:07 2016 -0500
+++ b/liboctave/system/oct-env.h	Mon Dec 05 22:59:37 2016 -0500
@@ -118,9 +118,9 @@
 
       // No copying!
 
-      env (const env&);
+      env (const env&) = delete;
 
-      env& operator = (const env&);
+      env& operator = (const env&) = delete;
 
       // The real thing.
       static env *instance;
--- a/liboctave/util/action-container.h	Mon Dec 05 21:04:07 2016 -0500
+++ b/liboctave/util/action-container.h	Mon Dec 05 22:59:37 2016 -0500
@@ -54,9 +54,9 @@
 
     // No copying!
 
-    elem (const elem&);
+    elem (const elem&) = delete;
 
-    elem& operator = (const elem&);
+    elem& operator = (const elem&) = delete;
   };
 
   // An element that merely runs a void (*)(void) function.
@@ -89,9 +89,9 @@
 
     // No copying!
 
-    fcn_arg_elem (const fcn_arg_elem&);
+    fcn_arg_elem (const fcn_arg_elem&) = delete;
 
-    fcn_arg_elem& operator = (const fcn_arg_elem&);
+    fcn_arg_elem& operator = (const fcn_arg_elem&) = delete;
 
     void (*e_fcn) (T);
     T e_arg;
@@ -133,9 +133,9 @@
 
     // No copying!
 
-    method_elem (const method_elem&);
+    method_elem (const method_elem&) = delete;
 
-    method_elem operator = (const method_elem&);
+    method_elem operator = (const method_elem&) = delete;
   };
 
   // An element for calling a member function with a single argument
@@ -157,9 +157,9 @@
 
     // No copying!
 
-    method_arg_elem (const method_arg_elem&);
+    method_arg_elem (const method_arg_elem&) = delete;
 
-    method_arg_elem operator = (const method_arg_elem&);
+    method_arg_elem operator = (const method_arg_elem&) = delete;
   };
 
   // An element for calling a member function with a single argument
@@ -181,9 +181,9 @@
 
     // No copying!
 
-    method_crefarg_elem (const method_crefarg_elem&);
+    method_crefarg_elem (const method_crefarg_elem&) = delete;
 
-    method_crefarg_elem operator = (const method_crefarg_elem&);
+    method_crefarg_elem operator = (const method_crefarg_elem&) = delete;
   };
 
   // An element that stores arbitrary variable, and restores it.
@@ -201,9 +201,9 @@
 
     // No copying!
 
-    restore_var_elem (const restore_var_elem&);
+    restore_var_elem (const restore_var_elem&) = delete;
 
-    restore_var_elem& operator = (const restore_var_elem&);
+    restore_var_elem& operator = (const restore_var_elem&) = delete;
 
     T *e_ptr, e_val;
   };
@@ -225,9 +225,9 @@
 
     // No copying!
 
-    delete_ptr_elem (const delete_ptr_elem&);
+    delete_ptr_elem (const delete_ptr_elem&) = delete;
 
-    delete_ptr_elem operator = (const delete_ptr_elem&);
+    delete_ptr_elem operator = (const delete_ptr_elem&) = delete;
   };
 
   action_container (void) { }
@@ -335,9 +335,9 @@
 
   // No copying!
 
-  action_container (const action_container&);
+  action_container (const action_container&) = delete;
 
-  action_container& operator = (const action_container&);
+  action_container& operator = (const action_container&) = delete;
 };
 
 #endif
--- a/liboctave/util/cmd-edit.cc	Mon Dec 05 21:04:07 2016 -0500
+++ b/liboctave/util/cmd-edit.cc	Mon Dec 05 22:59:37 2016 -0500
@@ -961,9 +961,9 @@
 
     // No copying!
 
-    default_command_editor (const default_command_editor&);
+    default_command_editor (const default_command_editor&) = delete;
 
-    default_command_editor& operator = (const default_command_editor&);
+    default_command_editor& operator = (const default_command_editor&) = delete;
   };
 
   std::string
--- a/liboctave/util/cmd-edit.h	Mon Dec 05 21:04:07 2016 -0500
+++ b/liboctave/util/cmd-edit.h	Mon Dec 05 22:59:37 2016 -0500
@@ -195,9 +195,9 @@
 
     // No copying!
 
-    command_editor (const command_editor&);
+    command_editor (const command_editor&) = delete;
 
-    command_editor& operator = (const command_editor&);
+    command_editor& operator = (const command_editor&) = delete;
 
     static bool instance_ok (void);
 
--- a/liboctave/util/cmd-hist.h	Mon Dec 05 21:04:07 2016 -0500
+++ b/liboctave/util/cmd-hist.h	Mon Dec 05 22:59:37 2016 -0500
@@ -121,9 +121,9 @@
 
     // No copying!
 
-    command_history (const command_history&);
+    command_history (const command_history&) = delete;
 
-    command_history& operator = (const command_history&);
+    command_history& operator = (const command_history&) = delete;
 
     static bool instance_ok (void);
 
--- a/liboctave/util/oct-locbuf.h	Mon Dec 05 21:04:07 2016 -0500
+++ b/liboctave/util/oct-locbuf.h	Mon Dec 05 22:59:37 2016 -0500
@@ -51,8 +51,10 @@
   T *data;
 
   // No copying!
-  octave_local_buffer (const octave_local_buffer&);
-  octave_local_buffer& operator = (const octave_local_buffer&);
+
+  octave_local_buffer (const octave_local_buffer&) = delete;
+
+  octave_local_buffer& operator = (const octave_local_buffer&) = delete;
 };
 
 // For buffers of POD types, we'll be smarter.  There is one thing
@@ -105,8 +107,10 @@
   char *dat;
 
   // No copying!
-  octave_chunk_buffer (const octave_chunk_buffer&);
-  octave_chunk_buffer& operator = (const octave_chunk_buffer&);
+
+  octave_chunk_buffer (const octave_chunk_buffer&) = delete;
+
+  octave_chunk_buffer& operator = (const octave_chunk_buffer&) = delete;
 };
 
 // This specializes octave_local_buffer to use the chunked buffer
--- a/liboctave/util/oct-mutex.h	Mon Dec 05 21:04:07 2016 -0500
+++ b/liboctave/util/oct-mutex.h	Mon Dec 05 22:59:37 2016 -0500
@@ -129,10 +129,11 @@
 
 private:
 
-  // No copying or default constructor!
-  octave_autolock (void);
-  octave_autolock (const octave_autolock&);
-  octave_autolock& operator = (const octave_autolock&);
+  // No copying.
+
+  octave_autolock (const octave_autolock&) = delete;
+
+  octave_autolock& operator = (const octave_autolock&) = delete;
 
 private:
   octave_mutex mutex;
--- a/liboctave/util/oct-shlib.cc	Mon Dec 05 21:04:07 2016 -0500
+++ b/liboctave/util/oct-shlib.cc	Mon Dec 05 22:59:37 2016 -0500
@@ -179,9 +179,9 @@
 
     // No copying!
 
-    octave_dlopen_shlib (const octave_dlopen_shlib&);
+    octave_dlopen_shlib (const octave_dlopen_shlib&) = delete;
 
-    octave_dlopen_shlib& operator = (const octave_dlopen_shlib&);
+    octave_dlopen_shlib& operator = (const octave_dlopen_shlib&) = delete;
 
     void *library;
   };
@@ -266,9 +266,9 @@
 
     // No copying!
 
-    octave_shl_load_shlib (const octave_shl_load_shlib&);
+    octave_shl_load_shlib (const octave_shl_load_shlib&) = delete;
 
-    octave_shl_load_shlib& operator = (const octave_shl_load_shlib&);
+    octave_shl_load_shlib& operator = (const octave_shl_load_shlib&) = delete;
 
     shl_t library;
   };
@@ -334,9 +334,9 @@
 
     // No copying!
 
-    octave_w32_shlib (const octave_w32_shlib&);
+    octave_w32_shlib (const octave_w32_shlib&) = delete;
 
-    octave_w32_shlib& operator = (const octave_w32_shlib&);
+    octave_w32_shlib& operator = (const octave_w32_shlib&) = delete;
 
     HINSTANCE handle;
   };
@@ -437,9 +437,9 @@
 
     // No copying!
 
-    octave_dyld_shlib (const octave_dyld_shlib&);
+    octave_dyld_shlib (const octave_dyld_shlib&) = delete;
 
-    octave_dyld_shlib& operator = (const octave_dyld_shlib&);
+    octave_dyld_shlib& operator = (const octave_dyld_shlib&) = delete;
 
     NSObjectFileImage img;
     NSModule handle;
--- a/liboctave/util/oct-sort.h	Mon Dec 05 21:04:07 2016 -0500
+++ b/liboctave/util/oct-sort.h	Mon Dec 05 22:59:37 2016 -0500
@@ -223,9 +223,9 @@
 
     // No copying!
 
-    MergeState (const MergeState&);
+    MergeState (const MergeState&) = delete;
 
-    MergeState& operator = (const MergeState&);
+    MergeState& operator = (const MergeState&) = delete;
   };
 
   compare_fcn_type compare;
@@ -331,9 +331,9 @@
 
   // No copying!
 
-  octave_sort (const octave_sort&);
+  octave_sort (const octave_sort&) = delete;
 
-  octave_sort& operator = (const octave_sort&);
+  octave_sort& operator = (const octave_sort&) = delete;
 };
 
 template <typename T>
--- a/liboctave/util/pathsearch.h	Mon Dec 05 21:04:07 2016 -0500
+++ b/liboctave/util/pathsearch.h	Mon Dec 05 22:59:37 2016 -0500
@@ -173,9 +173,9 @@
 
       // No copying!
 
-      static_members (const static_members&);
+      static_members (const static_members&) = delete;
 
-      static_members& operator = (const static_members&);
+      static_members& operator = (const static_members&) = delete;
 
       char xpath_sep_char;
 
--- a/liboctave/util/singleton-cleanup.h	Mon Dec 05 21:04:07 2016 -0500
+++ b/liboctave/util/singleton-cleanup.h	Mon Dec 05 22:59:37 2016 -0500
@@ -66,9 +66,9 @@
 
   // No copying!
 
-  singleton_cleanup_list (const singleton_cleanup_list&);
+  singleton_cleanup_list (const singleton_cleanup_list&) = delete;
 
-  singleton_cleanup_list& operator = (const singleton_cleanup_list&);
+  singleton_cleanup_list& operator = (const singleton_cleanup_list&) = delete;
 };
 
 #endif
--- a/liboctave/util/unwind-prot.h	Mon Dec 05 21:04:07 2016 -0500
+++ b/liboctave/util/unwind-prot.h	Mon Dec 05 22:59:37 2016 -0500
@@ -105,9 +105,9 @@
 
     // No copying!
 
-    unwind_protect (const unwind_protect&);
+    unwind_protect (const unwind_protect&) = delete;
 
-    unwind_protect& operator = (const unwind_protect&);
+    unwind_protect& operator = (const unwind_protect&) = delete;
   };
 
   // Like unwind_protect, but this one will guard against the possibility
@@ -145,9 +145,9 @@
 
     // No copying!
 
-    unwind_protect_safe (const unwind_protect_safe&);
+    unwind_protect_safe (const unwind_protect_safe&) = delete;
 
-    unwind_protect_safe& operator = (const unwind_protect_safe&);
+    unwind_protect_safe& operator = (const unwind_protect_safe&) = delete;
   };
 }
 
--- a/liboctave/util/url-transfer.cc	Mon Dec 05 21:04:07 2016 -0500
+++ b/liboctave/util/url-transfer.cc	Mon Dec 05 22:59:37 2016 -0500
@@ -670,9 +670,9 @@
 
     // No copying!
 
-    curl_transfer (const curl_transfer&);
+    curl_transfer (const curl_transfer&) = delete;
 
-    curl_transfer& operator = (const curl_transfer&);
+    curl_transfer& operator = (const curl_transfer&) = delete;
 
     void init (const std::string& user, const std::string& passwd,
                std::istream& is, std::ostream& os)
--- a/liboctave/util/url-transfer.h	Mon Dec 05 21:04:07 2016 -0500
+++ b/liboctave/util/url-transfer.h	Mon Dec 05 22:59:37 2016 -0500
@@ -158,9 +158,9 @@
 
     // No copying!
 
-    base_url_transfer (const base_url_transfer&);
+    base_url_transfer (const base_url_transfer&) = delete;
 
-    base_url_transfer& operator = (const base_url_transfer&);
+    base_url_transfer& operator = (const base_url_transfer&) = delete;
   };
 
   class