You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@arrow.apache.org by ks...@apache.org on 2021/11/03 12:19:51 UTC

[arrow] 08/10: ARROW-14450: [R] Old macos build error

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

kszucs pushed a commit to branch maint-6.0.x
in repository https://gitbox.apache.org/repos/asf/arrow.git

commit e1738e45615895d684fa246b9ed19fec04fa3297
Author: Weston Pace <we...@gmail.com>
AuthorDate: Thu Oct 28 09:17:19 2021 -0400

    ARROW-14450: [R] Old macos build error
    
    It appears that Clang 8 on MacOS 10.11.6 has a bug recognizing when a struct without a user provided constructor can be default initialized in a const context.
    
    Related issue: https://sourceware.org/bugzilla/show_bug.cgi?id=24937
    
    There is some discussion in the issue and a link to more discussion on the SO post (and eventually a reference to a defect in the spec)
    
    Closes #11526 from westonpace/experiment/odd-apple-compiler-bug-bridge-cc
    
    Authored-by: Weston Pace <we...@gmail.com>
    Signed-off-by: Neal Richardson <ne...@gmail.com>
---
 cpp/src/arrow/util/key_value_metadata.cc | 2 ++
 cpp/src/arrow/util/key_value_metadata.h  | 2 +-
 2 files changed, 3 insertions(+), 1 deletion(-)

diff --git a/cpp/src/arrow/util/key_value_metadata.cc b/cpp/src/arrow/util/key_value_metadata.cc
index fd179a8..bc48ae7 100644
--- a/cpp/src/arrow/util/key_value_metadata.cc
+++ b/cpp/src/arrow/util/key_value_metadata.cc
@@ -56,6 +56,8 @@ static std::vector<std::string> UnorderedMapValues(
   return values;
 }
 
+KeyValueMetadata::KeyValueMetadata() {}
+
 KeyValueMetadata::KeyValueMetadata(
     const std::unordered_map<std::string, std::string>& map)
     : keys_(UnorderedMapKeys(map)), values_(UnorderedMapValues(map)) {
diff --git a/cpp/src/arrow/util/key_value_metadata.h b/cpp/src/arrow/util/key_value_metadata.h
index 2a31bf3..ba70ffe 100644
--- a/cpp/src/arrow/util/key_value_metadata.h
+++ b/cpp/src/arrow/util/key_value_metadata.h
@@ -34,7 +34,7 @@ namespace arrow {
 /// \brief A container for key-value pair type metadata. Not thread-safe
 class ARROW_EXPORT KeyValueMetadata {
  public:
-  KeyValueMetadata() = default;
+  KeyValueMetadata();
   KeyValueMetadata(std::vector<std::string> keys, std::vector<std::string> values);
   explicit KeyValueMetadata(const std::unordered_map<std::string, std::string>& map);