Skip to content

Commit a9cbb7d

Browse files
Sandeep GottimukkalaSandeep Gottimukkala
authored andcommitted
fix: explicitly default TableScanBuilder move ctor for Windows DLL export
MSVC does not export the implicitly-generated move constructor of a template class instantiation. RestTableScanBuilder (introduced in iceberg_rest) is exported with ICEBERG_REST_EXPORT, so its compiler- generated move constructor must call the base TableScanBuilder move constructor as an imported symbol. Explicitly defaulting it makes it part of the explicit template instantiation and therefore exported.
1 parent 8685e29 commit a9cbb7d

1 file changed

Lines changed: 3 additions & 0 deletions

File tree

‎src/iceberg/table_scan.h‎

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -397,6 +397,9 @@ class ICEBERG_TEMPLATE_CLASS_EXPORT TableScanBuilder : public ErrorCollector {
397397
std::string table_name,
398398
std::shared_ptr<MetricsReporter> metrics_reporter);
399399

400+
TableScanBuilder(TableScanBuilder&&) = default;
401+
TableScanBuilder& operator=(TableScanBuilder&&) = default;
402+
400403
// Return the schema bound to the specified snapshot.
401404
Result<std::reference_wrapper<const std::shared_ptr<Schema>>> ResolveSnapshotSchema();
402405
Status ResolveColumnStatsSelection();

0 commit comments

Comments
 (0)