https://github.com/OSGeo/gdal/commit/9f1da7a2546e4df2cd63b99c7fefc7f2e607260a From 32493387de801ff143acad7572591d88ead4326a Mon Sep 17 00:00:00 2001 From: Nicklas Larsson Date: Mon, 8 Jun 2026 09:36:13 +0200 Subject: [PATCH] GTiff: Avoid value-initialization of vector of forward declared class Addresses "invalid application of 'sizeof' to an incomplete type 'GTiffJPEGOverviewDS'" compiler error on macOS 12 and earlier (with AppleClang 13 and earlier). --- frmts/gtiff/gtiffdataset.cpp | 5 ++++- frmts/gtiff/gtiffdataset.h | 4 ++-- 2 files changed, 6 insertions(+), 3 deletions(-) diff --git a/frmts/gtiff/gtiffdataset.cpp b/frmts/gtiff/gtiffdataset.cpp index fc2fc114b868..c25d26bd145b 100644 --- frmts/gtiff/gtiffdataset.cpp +++ frmts/gtiff/gtiffdataset.cpp @@ -70,7 +70,10 @@ const GTIFFTag *GTiffDataset::GetTIFFTags() /************************************************************************/ GTiffDataset::GTiffDataset() - : m_bStreamingIn(false), m_bStreamingOut(false), m_bScanDeferred(true), + : m_apoJPEGOverviewDS(std::vector>{}), + m_apoJPEGOverviewDSOld( + std::vector>{}), + m_bStreamingIn(false), m_bStreamingOut(false), m_bScanDeferred(true), m_bSingleIFDOpened(false), m_bLoadedBlockDirty(false), m_bWriteError(false), m_bLookedForProjection(false), m_bLookedForMDAreaOrPoint(false), m_bGeoTransformValid(false), diff --git a/frmts/gtiff/gtiffdataset.h b/frmts/gtiff/gtiffdataset.h index 58dc03c1a501..817cbb003797 100644 --- frmts/gtiff/gtiffdataset.h +++ frmts/gtiff/gtiffdataset.h @@ -133,8 +133,8 @@ class GTiffDataset final : public GDALPamDataset GTiffDataset *m_poBaseDS = nullptr; // Used with MASK_OVERVIEW_DATASET open option std::unique_ptr m_poMaskExtOvrDS{}; - std::vector> m_apoJPEGOverviewDS{}; - std::vector> m_apoJPEGOverviewDSOld{}; + std::vector> m_apoJPEGOverviewDS; + std::vector> m_apoJPEGOverviewDSOld; std::vector m_aoGCPs{}; std::unique_ptr m_poColorTable{}; char **m_papszMetadataFiles = nullptr;