You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@arrow.apache.org by ko...@apache.org on 2018/09/22 11:26:14 UTC

[arrow] branch master updated: ARROW-3299: [C++] Make RecordBatchBuilder non-copyable to appease MSVC

This is an automated email from the ASF dual-hosted git repository.

kou pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/arrow.git


The following commit(s) were added to refs/heads/master by this push:
     new c25ed39  ARROW-3299: [C++] Make RecordBatchBuilder non-copyable to appease MSVC
c25ed39 is described below

commit c25ed39abe773264efe9d5f1d7d70f784ddd7979
Author: Wes McKinney <we...@apache.org>
AuthorDate: Sat Sep 22 20:25:55 2018 +0900

    ARROW-3299: [C++] Make RecordBatchBuilder non-copyable to appease MSVC
    
    MSVC generates a copy constructor for this class and gets upset that `ArrayBuilder` is non-copyable. It seems that the behavior for classes with dllexport is different which is why the patch earlier today broke the build
    
    Author: Wes McKinney <we...@apache.org>
    
    Closes #2605 from wesm/ARROW-3299 and squashes the following commits:
    
    05e55add <Wes McKinney> Disallow copy and assignment
    48b26570 <Wes McKinney> unique_ptr requires assignment operator for some reason in MSVC
    7c484541 <Wes McKinney> Add explicit dtor
    1c95445f <Wes McKinney> Do not use inline dtor for ArrayBuilder
---
 cpp/src/arrow/table_builder.h | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/cpp/src/arrow/table_builder.h b/cpp/src/arrow/table_builder.h
index 9c02e7c..33a0705 100644
--- a/cpp/src/arrow/table_builder.h
+++ b/cpp/src/arrow/table_builder.h
@@ -93,6 +93,8 @@ class ARROW_EXPORT RecordBatchBuilder {
   std::shared_ptr<Schema> schema() const { return schema_; }
 
  private:
+  ARROW_DISALLOW_COPY_AND_ASSIGN(RecordBatchBuilder);
+
   RecordBatchBuilder(const std::shared_ptr<Schema>& schema, MemoryPool* pool,
                      int64_t initial_capacity);