This is an automated email from the ASF dual-hosted git repository. omalley pushed a commit to branch branch-1.4 in repository https://gitbox.apache.org/repos/asf/orc.git
commit 6ecc8eb33a51c09ae4721bee3b78e67921d0d59b Author: Owen O'Malley <[email protected]> AuthorDate: Mon Oct 14 14:40:06 2019 -0700 ORC-552: Fix c++ compilation for centos 6 and 8, and MacOs 10.14. Fixes #436 Signed-off-by: Owen O'Malley <[email protected]> --- CMakeLists.txt | 1 + c++/src/ColumnPrinter.cc | 56 ++++++++++++++++++++++---------------------- c++/src/Vector.cc | 28 +++++++++++----------- c++/src/wrap/gmock.h | 1 + c++/src/wrap/gtest-wrapper.h | 1 + c++/test/TestColumnReader.cc | 3 +++ 6 files changed, 48 insertions(+), 42 deletions(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index cc45a6b..dbe5009 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -86,6 +86,7 @@ if (CMAKE_CXX_COMPILER_ID STREQUAL "Clang") set (WARN_FLAGS "${WARN_FLAGS} -Wno-c++98-compat-pedantic -Wno-padded") set (WARN_FLAGS "${WARN_FLAGS} -Wno-covered-switch-default") set (WARN_FLAGS "${WARN_FLAGS} -Wno-missing-noreturn -Wno-unknown-pragmas") + set (WARN_FLAGS "${WARN_FLAGS} -Wno-gnu-zero-variadic-macro-arguments") set (WARN_FLAGS "${WARN_FLAGS} -Wconversion") if (CMAKE_HOST_APPLE AND CMAKE_CXX_COMPILER_VERSION VERSION_GREATER "11.0") set (WARN_FLAGS "${WARN_FLAGS} -Wno-c++2a-compat") diff --git a/c++/src/ColumnPrinter.cc b/c++/src/ColumnPrinter.cc index 379ef0b..b4b5860 100644 --- a/c++/src/ColumnPrinter.cc +++ b/c++/src/ColumnPrinter.cc @@ -289,8 +289,8 @@ namespace orc { return std::unique_ptr<ColumnPrinter>(result); } - VoidColumnPrinter::VoidColumnPrinter(std::string& buffer - ): ColumnPrinter(buffer) { + VoidColumnPrinter::VoidColumnPrinter(std::string& _buffer + ): ColumnPrinter(_buffer) { // PASS } @@ -302,8 +302,8 @@ namespace orc { writeString(buffer, "null"); } - LongColumnPrinter::LongColumnPrinter(std::string& buffer - ): ColumnPrinter(buffer), + LongColumnPrinter::LongColumnPrinter(std::string& _buffer + ): ColumnPrinter(_buffer), data(nullptr) { // PASS } @@ -324,9 +324,9 @@ namespace orc { } } - DoubleColumnPrinter::DoubleColumnPrinter(std::string& buffer, + DoubleColumnPrinter::DoubleColumnPrinter(std::string& _buffer, const Type& type - ): ColumnPrinter(buffer), + ): ColumnPrinter(_buffer), data(nullptr), isFloat(type.getKind() == FLOAT){ // PASS @@ -348,8 +348,8 @@ namespace orc { } } - Decimal64ColumnPrinter::Decimal64ColumnPrinter(std::string& buffer - ): ColumnPrinter(buffer), + Decimal64ColumnPrinter::Decimal64ColumnPrinter(std::string& _buffer + ): ColumnPrinter(_buffer), data(nullptr), scale(0) { // PASS @@ -398,8 +398,8 @@ namespace orc { } } - Decimal128ColumnPrinter::Decimal128ColumnPrinter(std::string& buffer - ): ColumnPrinter(buffer), + Decimal128ColumnPrinter::Decimal128ColumnPrinter(std::string& _buffer + ): ColumnPrinter(_buffer), data(nullptr), scale(0) { // PASS @@ -419,8 +419,8 @@ namespace orc { } } - StringColumnPrinter::StringColumnPrinter(std::string& buffer - ): ColumnPrinter(buffer), + StringColumnPrinter::StringColumnPrinter(std::string& _buffer + ): ColumnPrinter(_buffer), start(nullptr), length(nullptr) { // PASS @@ -470,9 +470,9 @@ namespace orc { } } - ListColumnPrinter::ListColumnPrinter(std::string& buffer, + ListColumnPrinter::ListColumnPrinter(std::string& _buffer, const Type& type - ): ColumnPrinter(buffer), + ): ColumnPrinter(_buffer), offsets(nullptr) { elementPrinter = createColumnPrinter(buffer, type.getSubtype(0)); } @@ -499,9 +499,9 @@ namespace orc { } } - MapColumnPrinter::MapColumnPrinter(std::string& buffer, + MapColumnPrinter::MapColumnPrinter(std::string& _buffer, const Type& type - ): ColumnPrinter(buffer), + ): ColumnPrinter(_buffer), offsets(nullptr) { keyPrinter = createColumnPrinter(buffer, type.getSubtype(0)); elementPrinter = createColumnPrinter(buffer, type.getSubtype(1)); @@ -534,9 +534,9 @@ namespace orc { } } - UnionColumnPrinter::UnionColumnPrinter(std::string& buffer, + UnionColumnPrinter::UnionColumnPrinter(std::string& _buffer, const Type& type - ): ColumnPrinter(buffer), + ): ColumnPrinter(_buffer), tags(nullptr), offsets(nullptr) { for(unsigned int i=0; i < type.getSubtypeCount(); ++i) { @@ -577,9 +577,9 @@ namespace orc { } } - StructColumnPrinter::StructColumnPrinter(std::string& buffer, + StructColumnPrinter::StructColumnPrinter(std::string& _buffer, const Type& type - ): ColumnPrinter(buffer) { + ): ColumnPrinter(_buffer) { for(unsigned int i=0; i < type.getSubtypeCount(); ++i) { fieldNames.push_back(type.getFieldName(i)); fieldPrinter.push_back(createColumnPrinter(buffer, @@ -621,8 +621,8 @@ namespace orc { } } - DateColumnPrinter::DateColumnPrinter(std::string& buffer - ): ColumnPrinter(buffer), + DateColumnPrinter::DateColumnPrinter(std::string& _buffer + ): ColumnPrinter(_buffer), data(nullptr) { // PASS } @@ -647,8 +647,8 @@ namespace orc { data = dynamic_cast<const LongVectorBatch&>(batch).data.data(); } - BooleanColumnPrinter::BooleanColumnPrinter(std::string& buffer - ): ColumnPrinter(buffer), + BooleanColumnPrinter::BooleanColumnPrinter(std::string& _buffer + ): ColumnPrinter(_buffer), data(nullptr) { // PASS } @@ -666,8 +666,8 @@ namespace orc { data = dynamic_cast<const LongVectorBatch&>(batch).data.data(); } - BinaryColumnPrinter::BinaryColumnPrinter(std::string& buffer - ): ColumnPrinter(buffer), + BinaryColumnPrinter::BinaryColumnPrinter(std::string& _buffer + ): ColumnPrinter(_buffer), start(nullptr), length(nullptr) { // PASS @@ -697,8 +697,8 @@ namespace orc { length = dynamic_cast<const StringVectorBatch&>(batch).length.data(); } - TimestampColumnPrinter::TimestampColumnPrinter(std::string& buffer - ): ColumnPrinter(buffer), + TimestampColumnPrinter::TimestampColumnPrinter(std::string& _buffer + ): ColumnPrinter(_buffer), seconds(nullptr), nanoseconds(nullptr) { // PASS diff --git a/c++/src/Vector.cc b/c++/src/Vector.cc index d5df7f7..59ad7ff 100644 --- a/c++/src/Vector.cc +++ b/c++/src/Vector.cc @@ -56,9 +56,9 @@ namespace orc { return false; } - LongVectorBatch::LongVectorBatch(uint64_t capacity, MemoryPool& pool - ): ColumnVectorBatch(capacity, pool), - data(pool, capacity) { + LongVectorBatch::LongVectorBatch(uint64_t _capacity, MemoryPool& pool + ): ColumnVectorBatch(_capacity, pool), + data(pool, _capacity) { // PASS } @@ -84,9 +84,9 @@ namespace orc { static_cast<uint64_t>(data.capacity() * sizeof(int64_t)); } - DoubleVectorBatch::DoubleVectorBatch(uint64_t capacity, MemoryPool& pool - ): ColumnVectorBatch(capacity, pool), - data(pool, capacity) { + DoubleVectorBatch::DoubleVectorBatch(uint64_t _capacity, MemoryPool& pool + ): ColumnVectorBatch(_capacity, pool), + data(pool, _capacity) { // PASS } @@ -112,10 +112,10 @@ namespace orc { + static_cast<uint64_t>(data.capacity() * sizeof(double)); } - StringVectorBatch::StringVectorBatch(uint64_t capacity, MemoryPool& pool - ): ColumnVectorBatch(capacity, pool), - data(pool, capacity), - length(pool, capacity) { + StringVectorBatch::StringVectorBatch(uint64_t _capacity, MemoryPool& pool + ): ColumnVectorBatch(_capacity, pool), + data(pool, _capacity), + length(pool, _capacity) { // PASS } @@ -400,12 +400,12 @@ namespace orc { return value.toDecimalString(scale); } - TimestampVectorBatch::TimestampVectorBatch(uint64_t capacity, + TimestampVectorBatch::TimestampVectorBatch(uint64_t _capacity, MemoryPool& pool - ): ColumnVectorBatch(capacity, + ): ColumnVectorBatch(_capacity, pool), - data(pool, capacity), - nanoseconds(pool, capacity) { + data(pool, _capacity), + nanoseconds(pool, _capacity) { // PASS } diff --git a/c++/src/wrap/gmock.h b/c++/src/wrap/gmock.h index bbf7956..2873f62 100644 --- a/c++/src/wrap/gmock.h +++ b/c++/src/wrap/gmock.h @@ -21,6 +21,7 @@ #include "Adaptor.hh" DIAGNOSTIC_PUSH +DIAGNOSTIC_IGNORE("-Wconversion") DIAGNOSTIC_IGNORE("-Wdeprecated") DIAGNOSTIC_IGNORE("-Wmissing-noreturn") DIAGNOSTIC_IGNORE("-Wpadded") diff --git a/c++/src/wrap/gtest-wrapper.h b/c++/src/wrap/gtest-wrapper.h index a14f6c3..859fee6 100644 --- a/c++/src/wrap/gtest-wrapper.h +++ b/c++/src/wrap/gtest-wrapper.h @@ -33,6 +33,7 @@ DIAGNOSTIC_IGNORE("-Wsign-compare") DIAGNOSTIC_PUSH +DIAGNOSTIC_IGNORE("-Wconversion") DIAGNOSTIC_IGNORE("-Wdeprecated") DIAGNOSTIC_IGNORE("-Wmissing-noreturn") DIAGNOSTIC_IGNORE("-Wpadded") diff --git a/c++/test/TestColumnReader.cc b/c++/test/TestColumnReader.cc index cfc34e8..7845c74 100644 --- a/c++/test/TestColumnReader.cc +++ b/c++/test/TestColumnReader.cc @@ -32,6 +32,9 @@ #ifdef __clang__ DIAGNOSTIC_IGNORE("-Winconsistent-missing-override") #endif +#ifdef __GNUC__ + DIAGNOSTIC_IGNORE("-Wparentheses") +#endif namespace orc {
