diff --git a/examples/DemoRunner/Builds/Android/app/CMakeLists.txt b/examples/DemoRunner/Builds/Android/app/CMakeLists.txt
index 26ca267cab..caac7696a5 100644
--- a/examples/DemoRunner/Builds/Android/app/CMakeLists.txt
+++ b/examples/DemoRunner/Builds/Android/app/CMakeLists.txt
@@ -1096,6 +1096,7 @@ add_library( ${BINARY_NAME}
"../../../../../modules/juce_core/memory/juce_Atomic.h"
"../../../../../modules/juce_core/memory/juce_ByteOrder.h"
"../../../../../modules/juce_core/memory/juce_ContainerDeletePolicy.h"
+ "../../../../../modules/juce_core/memory/juce_CopyableHeapBlock.h"
"../../../../../modules/juce_core/memory/juce_HeapBlock.h"
"../../../../../modules/juce_core/memory/juce_HeavyweightLeakedObjectDetector.h"
"../../../../../modules/juce_core/memory/juce_LeakedObjectDetector.h"
@@ -3616,6 +3617,7 @@ set_source_files_properties(
"../../../../../modules/juce_core/memory/juce_Atomic.h"
"../../../../../modules/juce_core/memory/juce_ByteOrder.h"
"../../../../../modules/juce_core/memory/juce_ContainerDeletePolicy.h"
+ "../../../../../modules/juce_core/memory/juce_CopyableHeapBlock.h"
"../../../../../modules/juce_core/memory/juce_HeapBlock.h"
"../../../../../modules/juce_core/memory/juce_HeavyweightLeakedObjectDetector.h"
"../../../../../modules/juce_core/memory/juce_LeakedObjectDetector.h"
diff --git a/examples/DemoRunner/Builds/VisualStudio2019/DemoRunner_App.vcxproj b/examples/DemoRunner/Builds/VisualStudio2019/DemoRunner_App.vcxproj
index 9fcc7af0b6..6f1d681359 100644
--- a/examples/DemoRunner/Builds/VisualStudio2019/DemoRunner_App.vcxproj
+++ b/examples/DemoRunner/Builds/VisualStudio2019/DemoRunner_App.vcxproj
@@ -3742,6 +3742,7 @@
+
diff --git a/examples/DemoRunner/Builds/VisualStudio2019/DemoRunner_App.vcxproj.filters b/examples/DemoRunner/Builds/VisualStudio2019/DemoRunner_App.vcxproj.filters
index f554894e99..7029bfed70 100644
--- a/examples/DemoRunner/Builds/VisualStudio2019/DemoRunner_App.vcxproj.filters
+++ b/examples/DemoRunner/Builds/VisualStudio2019/DemoRunner_App.vcxproj.filters
@@ -5808,6 +5808,9 @@
JUCE Modules\juce_core\memory
+
+ JUCE Modules\juce_core\memory
+
JUCE Modules\juce_core\memory
diff --git a/examples/DemoRunner/Builds/VisualStudio2022/DemoRunner_App.vcxproj b/examples/DemoRunner/Builds/VisualStudio2022/DemoRunner_App.vcxproj
index 6434b0b275..47e9214d09 100644
--- a/examples/DemoRunner/Builds/VisualStudio2022/DemoRunner_App.vcxproj
+++ b/examples/DemoRunner/Builds/VisualStudio2022/DemoRunner_App.vcxproj
@@ -3742,6 +3742,7 @@
+
diff --git a/examples/DemoRunner/Builds/VisualStudio2022/DemoRunner_App.vcxproj.filters b/examples/DemoRunner/Builds/VisualStudio2022/DemoRunner_App.vcxproj.filters
index 1c9b0a4757..32e0c670d3 100644
--- a/examples/DemoRunner/Builds/VisualStudio2022/DemoRunner_App.vcxproj.filters
+++ b/examples/DemoRunner/Builds/VisualStudio2022/DemoRunner_App.vcxproj.filters
@@ -5808,6 +5808,9 @@
JUCE Modules\juce_core\memory
+
+ JUCE Modules\juce_core\memory
+
JUCE Modules\juce_core\memory
diff --git a/extras/AudioPerformanceTest/Builds/Android/app/CMakeLists.txt b/extras/AudioPerformanceTest/Builds/Android/app/CMakeLists.txt
index 1da8107684..49ac3d972f 100644
--- a/extras/AudioPerformanceTest/Builds/Android/app/CMakeLists.txt
+++ b/extras/AudioPerformanceTest/Builds/Android/app/CMakeLists.txt
@@ -955,6 +955,7 @@ add_library( ${BINARY_NAME}
"../../../../../modules/juce_core/memory/juce_Atomic.h"
"../../../../../modules/juce_core/memory/juce_ByteOrder.h"
"../../../../../modules/juce_core/memory/juce_ContainerDeletePolicy.h"
+ "../../../../../modules/juce_core/memory/juce_CopyableHeapBlock.h"
"../../../../../modules/juce_core/memory/juce_HeapBlock.h"
"../../../../../modules/juce_core/memory/juce_HeavyweightLeakedObjectDetector.h"
"../../../../../modules/juce_core/memory/juce_LeakedObjectDetector.h"
@@ -3158,6 +3159,7 @@ set_source_files_properties(
"../../../../../modules/juce_core/memory/juce_Atomic.h"
"../../../../../modules/juce_core/memory/juce_ByteOrder.h"
"../../../../../modules/juce_core/memory/juce_ContainerDeletePolicy.h"
+ "../../../../../modules/juce_core/memory/juce_CopyableHeapBlock.h"
"../../../../../modules/juce_core/memory/juce_HeapBlock.h"
"../../../../../modules/juce_core/memory/juce_HeavyweightLeakedObjectDetector.h"
"../../../../../modules/juce_core/memory/juce_LeakedObjectDetector.h"
diff --git a/extras/AudioPerformanceTest/Builds/VisualStudio2022/AudioPerformanceTest_App.vcxproj b/extras/AudioPerformanceTest/Builds/VisualStudio2022/AudioPerformanceTest_App.vcxproj
index 43b13f21c8..e0c4545c40 100644
--- a/extras/AudioPerformanceTest/Builds/VisualStudio2022/AudioPerformanceTest_App.vcxproj
+++ b/extras/AudioPerformanceTest/Builds/VisualStudio2022/AudioPerformanceTest_App.vcxproj
@@ -3266,6 +3266,7 @@
+
diff --git a/extras/AudioPerformanceTest/Builds/VisualStudio2022/AudioPerformanceTest_App.vcxproj.filters b/extras/AudioPerformanceTest/Builds/VisualStudio2022/AudioPerformanceTest_App.vcxproj.filters
index daafb5b4ff..fad4989f63 100644
--- a/extras/AudioPerformanceTest/Builds/VisualStudio2022/AudioPerformanceTest_App.vcxproj.filters
+++ b/extras/AudioPerformanceTest/Builds/VisualStudio2022/AudioPerformanceTest_App.vcxproj.filters
@@ -5022,6 +5022,9 @@
JUCE Modules\juce_core\memory
+
+ JUCE Modules\juce_core\memory
+
JUCE Modules\juce_core\memory
diff --git a/extras/AudioPluginHost/Builds/Android/app/CMakeLists.txt b/extras/AudioPluginHost/Builds/Android/app/CMakeLists.txt
index 8b81ebb973..35aaefb72f 100644
--- a/extras/AudioPluginHost/Builds/Android/app/CMakeLists.txt
+++ b/extras/AudioPluginHost/Builds/Android/app/CMakeLists.txt
@@ -988,6 +988,7 @@ add_library( ${BINARY_NAME}
"../../../../../modules/juce_core/memory/juce_Atomic.h"
"../../../../../modules/juce_core/memory/juce_ByteOrder.h"
"../../../../../modules/juce_core/memory/juce_ContainerDeletePolicy.h"
+ "../../../../../modules/juce_core/memory/juce_CopyableHeapBlock.h"
"../../../../../modules/juce_core/memory/juce_HeapBlock.h"
"../../../../../modules/juce_core/memory/juce_HeavyweightLeakedObjectDetector.h"
"../../../../../modules/juce_core/memory/juce_LeakedObjectDetector.h"
@@ -3344,6 +3345,7 @@ set_source_files_properties(
"../../../../../modules/juce_core/memory/juce_Atomic.h"
"../../../../../modules/juce_core/memory/juce_ByteOrder.h"
"../../../../../modules/juce_core/memory/juce_ContainerDeletePolicy.h"
+ "../../../../../modules/juce_core/memory/juce_CopyableHeapBlock.h"
"../../../../../modules/juce_core/memory/juce_HeapBlock.h"
"../../../../../modules/juce_core/memory/juce_HeavyweightLeakedObjectDetector.h"
"../../../../../modules/juce_core/memory/juce_LeakedObjectDetector.h"
diff --git a/extras/AudioPluginHost/Builds/VisualStudio2019/AudioPluginHost_App.vcxproj b/extras/AudioPluginHost/Builds/VisualStudio2019/AudioPluginHost_App.vcxproj
index 0ebb582415..f3bdde7465 100644
--- a/extras/AudioPluginHost/Builds/VisualStudio2019/AudioPluginHost_App.vcxproj
+++ b/extras/AudioPluginHost/Builds/VisualStudio2019/AudioPluginHost_App.vcxproj
@@ -3446,6 +3446,7 @@
+
diff --git a/extras/AudioPluginHost/Builds/VisualStudio2019/AudioPluginHost_App.vcxproj.filters b/extras/AudioPluginHost/Builds/VisualStudio2019/AudioPluginHost_App.vcxproj.filters
index 112b567ee5..0fe8b36cd1 100644
--- a/extras/AudioPluginHost/Builds/VisualStudio2019/AudioPluginHost_App.vcxproj.filters
+++ b/extras/AudioPluginHost/Builds/VisualStudio2019/AudioPluginHost_App.vcxproj.filters
@@ -5298,6 +5298,9 @@
JUCE Modules\juce_core\memory
+
+ JUCE Modules\juce_core\memory
+
JUCE Modules\juce_core\memory
diff --git a/extras/AudioPluginHost/Builds/VisualStudio2022/AudioPluginHost_App.vcxproj b/extras/AudioPluginHost/Builds/VisualStudio2022/AudioPluginHost_App.vcxproj
index 31e0e4b400..ffc939e0b7 100644
--- a/extras/AudioPluginHost/Builds/VisualStudio2022/AudioPluginHost_App.vcxproj
+++ b/extras/AudioPluginHost/Builds/VisualStudio2022/AudioPluginHost_App.vcxproj
@@ -3446,6 +3446,7 @@
+
diff --git a/extras/AudioPluginHost/Builds/VisualStudio2022/AudioPluginHost_App.vcxproj.filters b/extras/AudioPluginHost/Builds/VisualStudio2022/AudioPluginHost_App.vcxproj.filters
index 739f98447a..d45df19419 100644
--- a/extras/AudioPluginHost/Builds/VisualStudio2022/AudioPluginHost_App.vcxproj.filters
+++ b/extras/AudioPluginHost/Builds/VisualStudio2022/AudioPluginHost_App.vcxproj.filters
@@ -5298,6 +5298,9 @@
JUCE Modules\juce_core\memory
+
+ JUCE Modules\juce_core\memory
+
JUCE Modules\juce_core\memory
diff --git a/extras/BinaryBuilder/Builds/VisualStudio2022/BinaryBuilder_ConsoleApp.vcxproj b/extras/BinaryBuilder/Builds/VisualStudio2022/BinaryBuilder_ConsoleApp.vcxproj
index f87cabdf20..4a9a026217 100644
--- a/extras/BinaryBuilder/Builds/VisualStudio2022/BinaryBuilder_ConsoleApp.vcxproj
+++ b/extras/BinaryBuilder/Builds/VisualStudio2022/BinaryBuilder_ConsoleApp.vcxproj
@@ -568,6 +568,7 @@
+
diff --git a/extras/BinaryBuilder/Builds/VisualStudio2022/BinaryBuilder_ConsoleApp.vcxproj.filters b/extras/BinaryBuilder/Builds/VisualStudio2022/BinaryBuilder_ConsoleApp.vcxproj.filters
index 8ae33c547d..62ed01bcd4 100644
--- a/extras/BinaryBuilder/Builds/VisualStudio2022/BinaryBuilder_ConsoleApp.vcxproj.filters
+++ b/extras/BinaryBuilder/Builds/VisualStudio2022/BinaryBuilder_ConsoleApp.vcxproj.filters
@@ -681,6 +681,9 @@
JUCE Modules\juce_core\memory
+
+ JUCE Modules\juce_core\memory
+
JUCE Modules\juce_core\memory
diff --git a/extras/NetworkGraphicsDemo/Builds/Android/app/CMakeLists.txt b/extras/NetworkGraphicsDemo/Builds/Android/app/CMakeLists.txt
index fe01c8482e..179362384d 100644
--- a/extras/NetworkGraphicsDemo/Builds/Android/app/CMakeLists.txt
+++ b/extras/NetworkGraphicsDemo/Builds/Android/app/CMakeLists.txt
@@ -959,6 +959,7 @@ add_library( ${BINARY_NAME}
"../../../../../modules/juce_core/memory/juce_Atomic.h"
"../../../../../modules/juce_core/memory/juce_ByteOrder.h"
"../../../../../modules/juce_core/memory/juce_ContainerDeletePolicy.h"
+ "../../../../../modules/juce_core/memory/juce_CopyableHeapBlock.h"
"../../../../../modules/juce_core/memory/juce_HeapBlock.h"
"../../../../../modules/juce_core/memory/juce_HeavyweightLeakedObjectDetector.h"
"../../../../../modules/juce_core/memory/juce_LeakedObjectDetector.h"
@@ -3242,6 +3243,7 @@ set_source_files_properties(
"../../../../../modules/juce_core/memory/juce_Atomic.h"
"../../../../../modules/juce_core/memory/juce_ByteOrder.h"
"../../../../../modules/juce_core/memory/juce_ContainerDeletePolicy.h"
+ "../../../../../modules/juce_core/memory/juce_CopyableHeapBlock.h"
"../../../../../modules/juce_core/memory/juce_HeapBlock.h"
"../../../../../modules/juce_core/memory/juce_HeavyweightLeakedObjectDetector.h"
"../../../../../modules/juce_core/memory/juce_LeakedObjectDetector.h"
diff --git a/extras/NetworkGraphicsDemo/Builds/VisualStudio2022/NetworkGraphicsDemo_App.vcxproj b/extras/NetworkGraphicsDemo/Builds/VisualStudio2022/NetworkGraphicsDemo_App.vcxproj
index 3e3b3b4bf2..376f5b0c44 100644
--- a/extras/NetworkGraphicsDemo/Builds/VisualStudio2022/NetworkGraphicsDemo_App.vcxproj
+++ b/extras/NetworkGraphicsDemo/Builds/VisualStudio2022/NetworkGraphicsDemo_App.vcxproj
@@ -3357,6 +3357,7 @@
+
diff --git a/extras/NetworkGraphicsDemo/Builds/VisualStudio2022/NetworkGraphicsDemo_App.vcxproj.filters b/extras/NetworkGraphicsDemo/Builds/VisualStudio2022/NetworkGraphicsDemo_App.vcxproj.filters
index c9f5a49f51..442642a432 100644
--- a/extras/NetworkGraphicsDemo/Builds/VisualStudio2022/NetworkGraphicsDemo_App.vcxproj.filters
+++ b/extras/NetworkGraphicsDemo/Builds/VisualStudio2022/NetworkGraphicsDemo_App.vcxproj.filters
@@ -5163,6 +5163,9 @@
JUCE Modules\juce_core\memory
+
+ JUCE Modules\juce_core\memory
+
JUCE Modules\juce_core\memory
diff --git a/extras/Projucer/Builds/VisualStudio2019/Projucer_App.vcxproj b/extras/Projucer/Builds/VisualStudio2019/Projucer_App.vcxproj
index 03e543c515..c2ab74e706 100644
--- a/extras/Projucer/Builds/VisualStudio2019/Projucer_App.vcxproj
+++ b/extras/Projucer/Builds/VisualStudio2019/Projucer_App.vcxproj
@@ -2068,6 +2068,7 @@
+
diff --git a/extras/Projucer/Builds/VisualStudio2019/Projucer_App.vcxproj.filters b/extras/Projucer/Builds/VisualStudio2019/Projucer_App.vcxproj.filters
index a5940d056c..65ecd8be7b 100644
--- a/extras/Projucer/Builds/VisualStudio2019/Projucer_App.vcxproj.filters
+++ b/extras/Projucer/Builds/VisualStudio2019/Projucer_App.vcxproj.filters
@@ -2820,6 +2820,9 @@
JUCE Modules\juce_core\memory
+
+ JUCE Modules\juce_core\memory
+
JUCE Modules\juce_core\memory
diff --git a/extras/Projucer/Builds/VisualStudio2022/Projucer_App.vcxproj b/extras/Projucer/Builds/VisualStudio2022/Projucer_App.vcxproj
index 7768c66529..60528b4ce6 100644
--- a/extras/Projucer/Builds/VisualStudio2022/Projucer_App.vcxproj
+++ b/extras/Projucer/Builds/VisualStudio2022/Projucer_App.vcxproj
@@ -2068,6 +2068,7 @@
+
diff --git a/extras/Projucer/Builds/VisualStudio2022/Projucer_App.vcxproj.filters b/extras/Projucer/Builds/VisualStudio2022/Projucer_App.vcxproj.filters
index e0644911e5..5d29a07652 100644
--- a/extras/Projucer/Builds/VisualStudio2022/Projucer_App.vcxproj.filters
+++ b/extras/Projucer/Builds/VisualStudio2022/Projucer_App.vcxproj.filters
@@ -2820,6 +2820,9 @@
JUCE Modules\juce_core\memory
+
+ JUCE Modules\juce_core\memory
+
JUCE Modules\juce_core\memory
diff --git a/extras/UnitTestRunner/Builds/VisualStudio2019/UnitTestRunner_ConsoleApp.vcxproj b/extras/UnitTestRunner/Builds/VisualStudio2019/UnitTestRunner_ConsoleApp.vcxproj
index 67f28ba25b..e231c78418 100644
--- a/extras/UnitTestRunner/Builds/VisualStudio2019/UnitTestRunner_ConsoleApp.vcxproj
+++ b/extras/UnitTestRunner/Builds/VisualStudio2019/UnitTestRunner_ConsoleApp.vcxproj
@@ -3542,6 +3542,7 @@
+
diff --git a/extras/UnitTestRunner/Builds/VisualStudio2019/UnitTestRunner_ConsoleApp.vcxproj.filters b/extras/UnitTestRunner/Builds/VisualStudio2019/UnitTestRunner_ConsoleApp.vcxproj.filters
index 3a61b8bbef..fac0ff7ff9 100644
--- a/extras/UnitTestRunner/Builds/VisualStudio2019/UnitTestRunner_ConsoleApp.vcxproj.filters
+++ b/extras/UnitTestRunner/Builds/VisualStudio2019/UnitTestRunner_ConsoleApp.vcxproj.filters
@@ -5412,6 +5412,9 @@
JUCE Modules\juce_core\memory
+
+ JUCE Modules\juce_core\memory
+
JUCE Modules\juce_core\memory
diff --git a/extras/UnitTestRunner/Builds/VisualStudio2022/UnitTestRunner_ConsoleApp.vcxproj b/extras/UnitTestRunner/Builds/VisualStudio2022/UnitTestRunner_ConsoleApp.vcxproj
index 785a09d65f..e33bb5e735 100644
--- a/extras/UnitTestRunner/Builds/VisualStudio2022/UnitTestRunner_ConsoleApp.vcxproj
+++ b/extras/UnitTestRunner/Builds/VisualStudio2022/UnitTestRunner_ConsoleApp.vcxproj
@@ -3542,6 +3542,7 @@
+
diff --git a/extras/UnitTestRunner/Builds/VisualStudio2022/UnitTestRunner_ConsoleApp.vcxproj.filters b/extras/UnitTestRunner/Builds/VisualStudio2022/UnitTestRunner_ConsoleApp.vcxproj.filters
index c90aeca7db..679ddd5d78 100644
--- a/extras/UnitTestRunner/Builds/VisualStudio2022/UnitTestRunner_ConsoleApp.vcxproj.filters
+++ b/extras/UnitTestRunner/Builds/VisualStudio2022/UnitTestRunner_ConsoleApp.vcxproj.filters
@@ -5412,6 +5412,9 @@
JUCE Modules\juce_core\memory
+
+ JUCE Modules\juce_core\memory
+
JUCE Modules\juce_core\memory
diff --git a/extras/WindowsDLL/Builds/VisualStudio2022/WindowsDLL_StaticLibrary.vcxproj b/extras/WindowsDLL/Builds/VisualStudio2022/WindowsDLL_StaticLibrary.vcxproj
index 9f00cbdb16..3ef5abd964 100644
--- a/extras/WindowsDLL/Builds/VisualStudio2022/WindowsDLL_StaticLibrary.vcxproj
+++ b/extras/WindowsDLL/Builds/VisualStudio2022/WindowsDLL_StaticLibrary.vcxproj
@@ -3333,6 +3333,7 @@
+
diff --git a/extras/WindowsDLL/Builds/VisualStudio2022/WindowsDLL_StaticLibrary.vcxproj.filters b/extras/WindowsDLL/Builds/VisualStudio2022/WindowsDLL_StaticLibrary.vcxproj.filters
index 1a0a02a238..68b921b926 100644
--- a/extras/WindowsDLL/Builds/VisualStudio2022/WindowsDLL_StaticLibrary.vcxproj.filters
+++ b/extras/WindowsDLL/Builds/VisualStudio2022/WindowsDLL_StaticLibrary.vcxproj.filters
@@ -5130,6 +5130,9 @@
JUCE Modules\juce_core\memory
+
+ JUCE Modules\juce_core\memory
+
JUCE Modules\juce_core\memory