You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@orc.apache.org by om...@apache.org on 2017/04/12 20:06:20 UTC

orc git commit: ORC-171. Fix C++ template warnings on Mac OS 10.12.4 with Clang Apple LLVM version 8.1.0 (clang-802.0.41).

Repository: orc
Updated Branches:
  refs/heads/master fbe553274 -> fa0a33e4a


ORC-171. Fix C++ template warnings on Mac OS 10.12.4 with
Clang Apple LLVM version 8.1.0 (clang-802.0.41).

Fixes #106

Signed-off-by: Owen O'Malley <om...@apache.org>


Project: http://git-wip-us.apache.org/repos/asf/orc/repo
Commit: http://git-wip-us.apache.org/repos/asf/orc/commit/fa0a33e4
Tree: http://git-wip-us.apache.org/repos/asf/orc/tree/fa0a33e4
Diff: http://git-wip-us.apache.org/repos/asf/orc/diff/fa0a33e4

Branch: refs/heads/master
Commit: fa0a33e4a7331dd21485bf4ccc0a93edf4b3ae16
Parents: fbe5532
Author: Owen O'Malley <om...@apache.org>
Authored: Wed Apr 12 10:48:59 2017 -0700
Committer: Owen O'Malley <om...@apache.org>
Committed: Wed Apr 12 13:04:40 2017 -0700

----------------------------------------------------------------------
 c++/include/orc/MemoryPool.hh | 65 ++++++++++++++++++++++++++++++++++++++
 c++/src/wrap/gmock.h          |  1 +
 2 files changed, 66 insertions(+)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/orc/blob/fa0a33e4/c++/include/orc/MemoryPool.hh
----------------------------------------------------------------------
diff --git a/c++/include/orc/MemoryPool.hh b/c++/include/orc/MemoryPool.hh
index 4673f69..2cf9e84 100644
--- a/c++/include/orc/MemoryPool.hh
+++ b/c++/include/orc/MemoryPool.hh
@@ -20,6 +20,7 @@
 #define MEMORYPOOL_HH_
 
 #include "orc/orc-config.hh"
+#include "orc/Int128.hh"
 
 #include <memory>
 
@@ -76,6 +77,70 @@ namespace orc {
     void resize(uint64_t _size);
   };
 
+  // Specializations for char
+
+  template <>
+  DataBuffer<char>::~DataBuffer();
+
+  template <>
+  void DataBuffer<char>::resize(uint64_t newSize);
+
+  // Specializations for char*
+
+  template <>
+  DataBuffer<char*>::~DataBuffer();
+
+  template <>
+  void DataBuffer<char*>::resize(uint64_t newSize);
+
+  // Specializations for double
+
+  template <>
+  DataBuffer<double>::~DataBuffer();
+
+  template <>
+  void DataBuffer<double>::resize(uint64_t newSize);
+
+  // Specializations for int64_t
+
+  template <>
+  DataBuffer<int64_t>::~DataBuffer();
+
+  template <>
+  void DataBuffer<int64_t>::resize(uint64_t newSize);
+
+  // Specializations for uint64_t
+
+  template <>
+  DataBuffer<uint64_t>::~DataBuffer();
+
+  template <>
+  void DataBuffer<uint64_t>::resize(uint64_t newSize);
+
+  // Specializations for unsigned char
+
+  template <>
+  DataBuffer<unsigned char>::~DataBuffer();
+
+  template <>
+  void DataBuffer<unsigned char>::resize(uint64_t newSize);
+
+  #ifdef __clang__
+    #pragma clang diagnostic push
+    #pragma clang diagnostic ignored "-Wweak-template-vtables"
+  #endif
+
+  extern template class DataBuffer<char>;
+  extern template class DataBuffer<char*>;
+  extern template class DataBuffer<double>;
+  extern template class DataBuffer<Int128>;
+  extern template class DataBuffer<int64_t>;
+  extern template class DataBuffer<uint64_t>;
+  extern template class DataBuffer<unsigned char>;
+
+  #ifdef __clang__
+    #pragma clang diagnostic pop
+  #endif
 } // namespace orc
 
 

http://git-wip-us.apache.org/repos/asf/orc/blob/fa0a33e4/c++/src/wrap/gmock.h
----------------------------------------------------------------------
diff --git a/c++/src/wrap/gmock.h b/c++/src/wrap/gmock.h
index 4a807ee..cca2a8a 100644
--- a/c++/src/wrap/gmock.h
+++ b/c++/src/wrap/gmock.h
@@ -29,6 +29,7 @@ DIAGNOSTIC_IGNORE("-Wsign-conversion")
 DIAGNOSTIC_IGNORE("-Wundef")
 
 #ifdef __clang__
+  DIAGNOSTIC_IGNORE("-Wnull-dereference")
   DIAGNOSTIC_IGNORE("-Wshift-sign-overflow")
   DIAGNOSTIC_IGNORE("-Wused-but-marked-unused")
   DIAGNOSTIC_IGNORE("-Wweak-vtables")