<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<style type="text/css" style="display:none;"> P {margin-top:0;margin-bottom:0;} </style>
</head>
<body dir="ltr">
<div style="font-family: "Calibri", "Helvetica", sans-serif; font-size: 12pt; color: rgb(0, 0, 0);" class="elementToProof">
Hi folks,</div>
<div style="font-family: "Calibri", "Helvetica", sans-serif; font-size: 12pt; color: rgb(0, 0, 0);" class="elementToProof">
<br>
</div>
<div style="font-family: "Calibri", "Helvetica", sans-serif; font-size: 12pt; color: rgb(0, 0, 0);" class="elementToProof">
I build GDAL 3.12 in Linux using GCC 8.5 and got 3 instance of "unique_ptr of a forward-declared class".</div>
<div style="font-family: "Calibri", "Helvetica", sans-serif; font-size: 12pt; color: rgb(0, 0, 0);" class="elementToProof">
<br>
</div>
<div style="font-family: "Calibri", "Helvetica", sans-serif; font-size: 12pt; color: rgb(0, 0, 0);" class="elementToProof">
It wasn't a big problem to solve, as you can see in the "git diff" report below.</div>
<div style="font-family: "Calibri", "Helvetica", sans-serif; font-size: 12pt; color: rgb(0, 0, 0);" class="elementToProof">
<br>
</div>
<div style="font-family: "Calibri", "Helvetica", sans-serif; font-size: 12pt; color: rgb(0, 0, 0);" class="elementToProof">
I am not sure but it seems like that issue should be resolved by updating the compile too.<br>
<br>
Anyway, for folks that might have that same problem, all I had to do is to add the following "#include" statements. </div>
<div style="font-family: "Calibri", "Helvetica", sans-serif; font-size: 12pt; color: rgb(0, 0, 0);" class="elementToProof">
<br>
</div>
<div style="font-family: "Calibri", "Helvetica", sans-serif; font-size: 12pt; color: rgb(0, 0, 0);" class="elementToProof">
It should be harmless. Everything seems to be working fine.</div>
<div style="font-family: "Calibri", "Helvetica", sans-serif; font-size: 12pt; color: rgb(0, 0, 0);" class="elementToProof">
<br>
</div>
<div style="font-family: "Calibri", "Helvetica", sans-serif; font-size: 12pt; color: rgb(0, 0, 0);" class="elementToProof">
Best regards,</div>
<div style="font-size: 12pt; color: rgb(0, 0, 0);" class="elementToProof"><span style="font-family: "Calibri", "Helvetica", sans-serif;">Ivan<br>
</span><span style="font-family: "Courier New", monospace;"><br>
$ git diff<br>
diff --git a/apps/gdalalg_vector_pipeline.h b/apps/gdalalg_vector_pipeline.h</span></div>
<div style="font-family: "Courier New", monospace; font-size: 12pt; color: rgb(0, 0, 0);" class="elementToProof">
index 87ed7c045c..ed44fdb513 100644</div>
<div style="font-family: "Courier New", monospace; font-size: 12pt; color: rgb(0, 0, 0);" class="elementToProof">
--- a/apps/gdalalg_vector_pipeline.h</div>
<div style="font-family: "Courier New", monospace; font-size: 12pt; color: rgb(0, 0, 0);" class="elementToProof">
+++ b/apps/gdalalg_vector_pipeline.h</div>
<div style="font-family: "Courier New", monospace; font-size: 12pt; color: rgb(0, 0, 0);" class="elementToProof">
@@ -22,6 +22,8 @@</div>
<div style="font-family: "Courier New", monospace; font-size: 12pt; color: rgb(0, 0, 0);" class="elementToProof">
#include <map></div>
<div style="font-family: "Courier New", monospace; font-size: 12pt; color: rgb(0, 0, 0);" class="elementToProof">
#include <vector></div>
<div style="font-family: "Courier New", monospace; font-size: 12pt; color: rgb(0, 0, 0);" class="elementToProof">
</div>
<div style="font-family: "Courier New", monospace; font-size: 12pt; color: rgb(0, 0, 0);" class="elementToProof">
+#include "memdataset.h" </div>
<div style="font-family: "Courier New", monospace; font-size: 12pt; color: rgb(0, 0, 0);" class="elementToProof">
+</div>
<div style="font-family: "Courier New", monospace; font-size: 12pt; color: rgb(0, 0, 0);" class="elementToProof">
//! @cond Doxygen_Suppress</div>
<div style="font-family: "Courier New", monospace; font-size: 12pt; color: rgb(0, 0, 0);" class="elementToProof">
</div>
<div style="font-family: "Courier New", monospace; font-size: 12pt; color: rgb(0, 0, 0);" class="elementToProof">
/************************************************************************/</div>
<div style="font-family: "Courier New", monospace; font-size: 12pt; color: rgb(0, 0, 0);" class="elementToProof">
diff --git a/frmts/vrt/vrtdataset.h b/frmts/vrt/vrtdataset.h</div>
<div style="font-family: "Courier New", monospace; font-size: 12pt; color: rgb(0, 0, 0);" class="elementToProof">
index bcc4d30790..677b23d398 100644</div>
<div style="font-family: "Courier New", monospace; font-size: 12pt; color: rgb(0, 0, 0);" class="elementToProof">
--- a/frmts/vrt/vrtdataset.h</div>
<div style="font-family: "Courier New", monospace; font-size: 12pt; color: rgb(0, 0, 0);" class="elementToProof">
+++ b/frmts/vrt/vrtdataset.h</div>
<div style="font-family: "Courier New", monospace; font-size: 12pt; color: rgb(0, 0, 0);" class="elementToProof">
@@ -24,6 +24,8 @@</div>
<div style="font-family: "Courier New", monospace; font-size: 12pt; color: rgb(0, 0, 0);" class="elementToProof">
#include "gdal_vrt.h"</div>
<div style="font-family: "Courier New", monospace; font-size: 12pt; color: rgb(0, 0, 0);" class="elementToProof">
#include "gdal_rat.h"</div>
<div style="font-family: "Courier New", monospace; font-size: 12pt; color: rgb(0, 0, 0);" class="elementToProof">
</div>
<div style="font-family: "Courier New", monospace; font-size: 12pt; color: rgb(0, 0, 0);" class="elementToProof">
+#include "gdalpansharpen.h" </div>
<div style="font-family: "Courier New", monospace; font-size: 12pt; color: rgb(0, 0, 0);" class="elementToProof">
+</div>
<div style="font-family: "Courier New", monospace; font-size: 12pt; color: rgb(0, 0, 0);" class="elementToProof">
#include <atomic></div>
<div style="font-family: "Courier New", monospace; font-size: 12pt; color: rgb(0, 0, 0);" class="elementToProof">
#include <deque></div>
<div style="font-family: "Courier New", monospace; font-size: 12pt; color: rgb(0, 0, 0);" class="elementToProof">
#include <functional></div>
<div style="font-family: "Courier New", monospace; font-size: 12pt; color: rgb(0, 0, 0);" class="elementToProof">
diff --git a/gcore/gdal_multidim.h b/gcore/gdal_multidim.h</div>
<div style="font-family: "Courier New", monospace; font-size: 12pt; color: rgb(0, 0, 0);" class="elementToProof">
index 8c5d9f9037..7c45a76f41 100644</div>
<div style="font-family: "Courier New", monospace; font-size: 12pt; color: rgb(0, 0, 0);" class="elementToProof">
--- a/gcore/gdal_multidim.h</div>
<div style="font-family: "Courier New", monospace; font-size: 12pt; color: rgb(0, 0, 0);" class="elementToProof">
+++ b/gcore/gdal_multidim.h</div>
<div style="font-family: "Courier New", monospace; font-size: 12pt; color: rgb(0, 0, 0);" class="elementToProof">
@@ -25,6 +25,8 @@</div>
<div style="font-family: "Courier New", monospace; font-size: 12pt; color: rgb(0, 0, 0);" class="elementToProof">
#include <memory></div>
<div style="font-family: "Courier New", monospace; font-size: 12pt; color: rgb(0, 0, 0);" class="elementToProof">
#include <vector></div>
<div style="font-family: "Courier New", monospace; font-size: 12pt; color: rgb(0, 0, 0);" class="elementToProof">
</div>
<div style="font-family: "Courier New", monospace; font-size: 12pt; color: rgb(0, 0, 0);" class="elementToProof">
+#include "gdal_rat.h" </div>
<div style="font-family: "Courier New", monospace; font-size: 12pt; color: rgb(0, 0, 0);" class="elementToProof">
+</div>
<div style="font-family: "Courier New", monospace; font-size: 12pt; color: rgb(0, 0, 0);" class="elementToProof">
/* ******************************************************************** */</div>
<div style="font-family: "Courier New", monospace; font-size: 12pt; color: rgb(0, 0, 0);" class="elementToProof">
/* Multidimensional array API */</div>
<div style="font-family: "Courier New", monospace; font-size: 12pt; color: rgb(0, 0, 0);" class="elementToProof">
/* ******************************************************************** */</div>
<div style="font-family: "Calibri", "Helvetica", sans-serif; font-size: 12pt; color: rgb(0, 0, 0);" class="elementToProof">
<br>
</div>
</body>
</html>