diff --git a/src/storage/StorageInterface.hxx b/src/storage/StorageInterface.hxx
index ecdc882b6368c2f32888b70ca71d473f125d4c18..18bee8cfd4f4623701b33c9154699ac4fc1e9c5e 100644
--- a/src/storage/StorageInterface.hxx
+++ b/src/storage/StorageInterface.hxx
@@ -31,6 +31,8 @@ class AllocatedPath;
 
 class StorageDirectoryReader {
 public:
+	StorageDirectoryReader() = default;
+	StorageDirectoryReader(const StorageDirectoryReader &) = delete;
 	virtual ~StorageDirectoryReader() {}
 
 	virtual const char *Read() = 0;
@@ -39,6 +41,8 @@ public:
 
 class Storage {
 public:
+	Storage() = default;
+	Storage(const Storage &) = delete;
 	virtual ~Storage() {}
 
 	virtual bool GetInfo(const char *uri_utf8, bool follow, FileInfo &info,
diff --git a/src/storage/plugins/LocalStorage.hxx b/src/storage/plugins/LocalStorage.hxx
index d9c2fcb6405a1520a3a5152a8f145711e7c30e77..319d0d1899a7b042e1ffe1167d4e1dc907cd9449 100644
--- a/src/storage/plugins/LocalStorage.hxx
+++ b/src/storage/plugins/LocalStorage.hxx
@@ -56,8 +56,6 @@ public:
 	LocalStorage(const char *_base_utf8, Path _base_fs)
 		:base_utf8(_base_utf8), base_fs(_base_fs) {}
 
-	LocalStorage(const LocalStorage &) = delete;
-
 	/* virtual methods from class Storage */
 	virtual bool GetInfo(const char *uri_utf8, bool follow, FileInfo &info,
 			     Error &error) override;