[ https://issues.apache.org/jira/browse/PARQUET-238?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15116456#comment-15116456 ]
Wes McKinney edited comment on PARQUET-238 at 1/26/16 1:20 AM: --------------------------------------------------------------- This is resolved with PARQUET-416 and PARQUET-267. Please let us know if you run into more problems building on OSX 10.10 was (Author: wesmckinn): This is resolved with PARQUET-418 and PARQUET-267. Please let us know if you run into more problems building on OSX 10.10 > Unable to Install C++ Driver - reference to 'share_ptr' is ambiguous > -------------------------------------------------------------------- > > Key: PARQUET-238 > URL: https://issues.apache.org/jira/browse/PARQUET-238 > Project: Parquet > Issue Type: Bug > Components: parquet-cpp > Environment: Mac Mavericks > Reporter: Aaron Benz > > Install commands worked up until the make cmd > Aarons-MBP:parquet-cpp Aaron$ make > Scanning dependencies of target ThriftParquet > [ 12%] Building CXX object > generated/gen-cpp/CMakeFiles/ThriftParquet.dir/parquet_constants.cpp.o > [ 25%] Building CXX object > generated/gen-cpp/CMakeFiles/ThriftParquet.dir/parquet_types.cpp.o > Linking CXX static library ../../build/libThriftParquet.a > [ 25%] Built target ThriftParquet > Scanning dependencies of target Parquet > [ 37%] Building CXX object src/CMakeFiles/Parquet.dir/parquet.cc.o > /Users/Aaron/myProgs/parquet-cpp/src/parquet.cc:79:5: warning: variable > 'value_byte_size' > is used uninitialized whenever switch default is taken > [-Wsometimes-uninitialized] > default: > ^~~~~~~ > /Users/Aaron/myProgs/parquet-cpp/src/parquet.cc:94:46: note: uninitialized > use occurs here > values_buffer_.resize(config_.batch_size * value_byte_size); > ^~~~~~~~~~~~~~~ > /Users/Aaron/myProgs/parquet-cpp/src/parquet.cc:59:22: note: initialize the > variable > 'value_byte_size' to silence this warning > int value_byte_size; > ^ > = 0 > /Users/Aaron/myProgs/parquet-cpp/src/parquet.cc:167:37: error: reference to > 'shared_ptr' is > ambiguous > unordered_map<Encoding::type, shared_ptr<Decoder> >::iterator it = > ^ > /usr/local/include/boost/smart_ptr/shared_ptr.hpp:717:36: note: candidate > found by name > lookup is 'boost::shared_ptr' > template<class Y> friend class shared_ptr; > ^ > /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/../include/c++/v1/memory:3750:29: > note: > candidate found by name lookup is 'std::__1::shared_ptr' > class _LIBCPP_TYPE_VIS_ONLY shared_ptr > ^ > /Users/Aaron/myProgs/parquet-cpp/src/parquet.cc:167:48: error: 'Decoder' does > not refer to > a value > unordered_map<Encoding::type, shared_ptr<Decoder> >::iterator it = > ^ > /Users/Aaron/myProgs/parquet-cpp/src/encodings/encodings.h:27:7: note: > declared here > class Decoder { > ^ > /Users/Aaron/myProgs/parquet-cpp/src/parquet.cc:169:11: error: use of > undeclared identifier > 'it' > if (it != decoders_.end()) { > ^ > /Users/Aaron/myProgs/parquet-cpp/src/parquet.cc:176:7: error: reference to > 'shared_ptr' is > ambiguous > shared_ptr<Decoder> decoder(new DictionaryDecoder(schema_->type, > &dictionary)); > ^ > /usr/local/include/boost/smart_ptr/shared_ptr.hpp:717:36: note: candidate > found by name > lookup is 'boost::shared_ptr' > template<class Y> friend class shared_ptr; > ^ > /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/../include/c++/v1/memory:3750:29: > note: > candidate found by name lookup is 'std::__1::shared_ptr' > class _LIBCPP_TYPE_VIS_ONLY shared_ptr > ^ > /Users/Aaron/myProgs/parquet-cpp/src/parquet.cc:177:45: error: use of > undeclared identifier > 'decoder'; did you mean 'decoders_'? > decoders_[Encoding::RLE_DICTIONARY] = decoder; > ^~~~~~~ > decoders_ > /Users/Aaron/myProgs/parquet-cpp/src/parquet/parquet.h:152:78: note: > 'decoders_' declared > here > boost::unordered_map<parquet::Encoding::type, boost::shared_ptr<Decoder> > > decoders_; > ^ > /Users/Aaron/myProgs/parquet-cpp/src/parquet.cc:177:43: error: no viable > overloaded '=' > decoders_[Encoding::RLE_DICTIONARY] = decoder; > ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ^ ~~~~~~~ > /usr/local/include/boost/smart_ptr/shared_ptr.hpp:500:18: note: candidate > function not > viable: no known conversion from > 'boost::unordered_map<parquet::Encoding::type, > boost::shared_ptr<Decoder> >' to 'const > boost::shared_ptr<parquet_cpp::Decoder>' for > 1st argument > shared_ptr & operator=( shared_ptr const & r ) BOOST_NOEXCEPT > ^ > /usr/local/include/boost/smart_ptr/shared_ptr.hpp:509:18: note: candidate > template ignored: > could not match 'shared_ptr' against 'unordered_map' > shared_ptr & operator=(shared_ptr<Y> const & r) BOOST_NOEXCEPT > ^ > /usr/local/include/boost/smart_ptr/shared_ptr.hpp:520:18: note: candidate > template ignored: > could not match 'auto_ptr' against 'unordered_map' > shared_ptr & operator=( std::auto_ptr<Y> & r ) > ^ > /usr/local/include/boost/smart_ptr/shared_ptr.hpp:538:77: note: candidate > template ignored: > substitution failure [with Ap = > boost::unordered::unordered_map<parquet::Encoding::type, > boost::shared_ptr<parquet_cpp::Decoder>, > boost::hash<parquet::Encoding::type>, > std::__1::equal_to<parquet::Encoding::type>, > std::__1::allocator<std::__1::pair<const > parquet::Encoding::type, boost::shared_ptr<parquet_cpp::Decoder> > > > >]: no type > named 'type' in > > 'boost::detail::sp_enable_if_auto_ptr<boost::unordered::unordered_map<parquet::Encoding::type, > boost::shared_ptr<parquet_cpp::Decoder>, > boost::hash<parquet::Encoding::type>, > std::__1::equal_to<parquet::Encoding::type>, > std::__1::allocator<std::__1::pair<const > parquet::Encoding::type, boost::shared_ptr<parquet_cpp::Decoder> > > >, > boost::shared_ptr<parquet_cpp::Decoder> &>' > typename boost::detail::sp_enable_if_auto_ptr< Ap, shared_ptr & >::type > operato... > ~~~~ ^ > /Users/Aaron/myProgs/parquet-cpp/src/parquet.cc:202:37: error: reference to > 'shared_ptr' is > ambiguous > unordered_map<Encoding::type, shared_ptr<Decoder> >::iterator it = > ^ > /usr/local/include/boost/smart_ptr/shared_ptr.hpp:717:36: note: candidate > found by name > lookup is 'boost::shared_ptr' > template<class Y> friend class shared_ptr; > ^ > /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/../include/c++/v1/memory:3750:29: > note: > candidate found by name lookup is 'std::__1::shared_ptr' > class _LIBCPP_TYPE_VIS_ONLY shared_ptr > ^ > /Users/Aaron/myProgs/parquet-cpp/src/parquet.cc:202:48: error: 'Decoder' does > not refer to > a value > unordered_map<Encoding::type, shared_ptr<Decoder> >::iterator it = > ^ > /Users/Aaron/myProgs/parquet-cpp/src/encodings/encodings.h:27:7: note: > declared here > class Decoder { > ^ > /Users/Aaron/myProgs/parquet-cpp/src/parquet.cc:204:11: error: use of > undeclared identifier > 'it' > if (it != decoders_.end()) { > ^ > /Users/Aaron/myProgs/parquet-cpp/src/parquet.cc:205:28: error: use of > undeclared identifier > 'it' > current_decoder_ = it->second.get(); > ^ > /Users/Aaron/myProgs/parquet-cpp/src/parquet.cc:209:13: error: reference to > 'shared_ptr' is > ambiguous > shared_ptr<Decoder> decoder; > ^ > /usr/local/include/boost/smart_ptr/shared_ptr.hpp:717:36: note: candidate > found by name > lookup is 'boost::shared_ptr' > template<class Y> friend class shared_ptr; > ^ > /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/../include/c++/v1/memory:3750:29: > note: > candidate found by name lookup is 'std::__1::shared_ptr' > class _LIBCPP_TYPE_VIS_ONLY shared_ptr > ^ > /Users/Aaron/myProgs/parquet-cpp/src/parquet.cc:211:15: error: use of > undeclared identifier > 'decoder'; did you mean 'decoders_'? > decoder.reset(new BoolDecoder()); > ^~~~~~~ > decoders_ > /Users/Aaron/myProgs/parquet-cpp/src/parquet/parquet.h:152:78: note: > 'decoders_' declared > here > boost::unordered_map<parquet::Encoding::type, boost::shared_ptr<Decoder> > > decoders_; > ^ > /Users/Aaron/myProgs/parquet-cpp/src/parquet.cc:211:23: error: no member > named 'reset' in > 'boost::unordered::unordered_map<parquet::Encoding::type, > boost::shared_ptr<parquet_cpp::Decoder>, > boost::hash<parquet::Encoding::type>, > std::__1::equal_to<parquet::Encoding::type>, > std::__1::allocator<std::__1::pair<const > parquet::Encoding::type, boost::shared_ptr<parquet_cpp::Decoder> > > >' > decoder.reset(new BoolDecoder()); > ~~~~~~~ ^ > /Users/Aaron/myProgs/parquet-cpp/src/parquet.cc:213:15: error: use of > undeclared identifier > 'decoder'; did you mean 'decoders_'? > decoder.reset(new PlainDecoder(schema_->type)); > ^~~~~~~ > decoders_ > /Users/Aaron/myProgs/parquet-cpp/src/parquet/parquet.h:152:78: note: > 'decoders_' declared > here > boost::unordered_map<parquet::Encoding::type, boost::shared_ptr<Decoder> > > decoders_; > ^ > /Users/Aaron/myProgs/parquet-cpp/src/parquet.cc:213:23: error: no member > named 'reset' in > 'boost::unordered::unordered_map<parquet::Encoding::type, > boost::shared_ptr<parquet_cpp::Decoder>, > boost::hash<parquet::Encoding::type>, > std::__1::equal_to<parquet::Encoding::type>, > std::__1::allocator<std::__1::pair<const > parquet::Encoding::type, boost::shared_ptr<parquet_cpp::Decoder> > > >' > decoder.reset(new PlainDecoder(schema_->type)); > ~~~~~~~ ^ > /Users/Aaron/myProgs/parquet-cpp/src/parquet.cc:215:35: error: use of > undeclared identifier > 'decoder'; did you mean 'decoders_'? > decoders_[encoding] = decoder; > ^~~~~~~ > decoders_ > /Users/Aaron/myProgs/parquet-cpp/src/parquet/parquet.h:152:78: note: > 'decoders_' declared > here > boost::unordered_map<parquet::Encoding::type, boost::shared_ptr<Decoder> > > decoders_; > ^ > /Users/Aaron/myProgs/parquet-cpp/src/parquet.cc:215:33: error: no viable > overloaded '=' > decoders_[encoding] = decoder; > ~~~~~~~~~~~~~~~~~~~ ^ ~~~~~~~ > /usr/local/include/boost/smart_ptr/shared_ptr.hpp:500:18: note: candidate > function not > viable: no known conversion from > 'boost::unordered_map<parquet::Encoding::type, > boost::shared_ptr<Decoder> >' to 'const > boost::shared_ptr<parquet_cpp::Decoder>' for > 1st argument > shared_ptr & operator=( shared_ptr const & r ) BOOST_NOEXCEPT > ^ > /usr/local/include/boost/smart_ptr/shared_ptr.hpp:509:18: note: candidate > template ignored: > could not match 'shared_ptr' against 'unordered_map' > shared_ptr & operator=(shared_ptr<Y> const & r) BOOST_NOEXCEPT > ^ > /usr/local/include/boost/smart_ptr/shared_ptr.hpp:520:18: note: candidate > template ignored: > could not match 'auto_ptr' against 'unordered_map' > shared_ptr & operator=( std::auto_ptr<Y> & r ) > ^ > /usr/local/include/boost/smart_ptr/shared_ptr.hpp:538:77: note: candidate > template ignored: > substitution failure [with Ap = > boost::unordered::unordered_map<parquet::Encoding::type, > boost::shared_ptr<parquet_cpp::Decoder>, > boost::hash<parquet::Encoding::type>, > std::__1::equal_to<parquet::Encoding::type>, > std::__1::allocator<std::__1::pair<const > parquet::Encoding::type, boost::shared_ptr<parquet_cpp::Decoder> > > > >]: no type > named 'type' in > > 'boost::detail::sp_enable_if_auto_ptr<boost::unordered::unordered_map<parquet::Encoding::type, > boost::shared_ptr<parquet_cpp::Decoder>, > boost::hash<parquet::Encoding::type>, > std::__1::equal_to<parquet::Encoding::type>, > std::__1::allocator<std::__1::pair<const > parquet::Encoding::type, boost::shared_ptr<parquet_cpp::Decoder> > > >, > boost::shared_ptr<parquet_cpp::Decoder> &>' > typename boost::detail::sp_enable_if_auto_ptr< Ap, shared_ptr & >::type > operato... > ~~~~ ^ > /Users/Aaron/myProgs/parquet-cpp/src/parquet.cc:216:32: error: use of > undeclared identifier > 'decoder'; did you mean 'decoders_'? > current_decoder_ = decoder.get(); > ^~~~~~~ > decoders_ > /Users/Aaron/myProgs/parquet-cpp/src/parquet/parquet.h:152:78: note: > 'decoders_' declared > here > boost::unordered_map<parquet::Encoding::type, boost::shared_ptr<Decoder> > > decoders_; > ^ > /Users/Aaron/myProgs/parquet-cpp/src/parquet.cc:216:40: error: no member > named 'get' in > 'boost::unordered::unordered_map<parquet::Encoding::type, > boost::shared_ptr<parquet_cpp::Decoder>, > boost::hash<parquet::Encoding::type>, > std::__1::equal_to<parquet::Encoding::type>, > std::__1::allocator<std::__1::pair<const > parquet::Encoding::type, boost::shared_ptr<parquet_cpp::Decoder> > > >' > current_decoder_ = decoder.get(); > ~~~~~~~ ^ > 1 warning and 19 errors generated. > make[2]: *** [src/CMakeFiles/Parquet.dir/parquet.cc.o] Error 1 > make[1]: *** [src/CMakeFiles/Parquet.dir/all] Error 2 > make: *** [all] Error 2 > Aarons-MBP:parquet-cpp Aaron$ > Aarons-MBP:parquet-cpp Aaron$ git pull > Already up-to-date. > Aarons-MBP:parquet-cpp Aaron$ make > [ 25%] Built target ThriftParquet > [ 37%] Building CXX object src/CMakeFiles/Parquet.dir/parquet.cc.o > /Users/Aaron/myProgs/parquet-cpp/src/parquet.cc:79:5: warning: variable > 'value_byte_size' is used uninitialized whenever switch default is > taken [-Wsometimes-uninitialized] > default: > ^~~~~~~ > /Users/Aaron/myProgs/parquet-cpp/src/parquet.cc:94:46: note: uninitialized > use occurs here > values_buffer_.resize(config_.batch_size * value_byte_size); > ^~~~~~~~~~~~~~~ > /Users/Aaron/myProgs/parquet-cpp/src/parquet.cc:59:22: note: initialize the > variable 'value_byte_size' to silence this warning > int value_byte_size; > ^ > = 0 > /Users/Aaron/myProgs/parquet-cpp/src/parquet.cc:167:37: error: reference to > 'shared_ptr' is ambiguous > unordered_map<Encoding::type, shared_ptr<Decoder> >::iterator it = > ^ > /usr/local/include/boost/smart_ptr/shared_ptr.hpp:717:36: note: candidate > found by name lookup is 'boost::shared_ptr' > template<class Y> friend class shared_ptr; > ^ > /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/../include/c++/v1/memory:3750:29: > note: candidate > found by name lookup is 'std::__1::shared_ptr' > class _LIBCPP_TYPE_VIS_ONLY shared_ptr > ^ > /Users/Aaron/myProgs/parquet-cpp/src/parquet.cc:167:48: error: 'Decoder' does > not refer to a value > unordered_map<Encoding::type, shared_ptr<Decoder> >::iterator it = > ^ > /Users/Aaron/myProgs/parquet-cpp/src/encodings/encodings.h:27:7: note: > declared here > class Decoder { > ^ > /Users/Aaron/myProgs/parquet-cpp/src/parquet.cc:169:11: error: use of > undeclared identifier 'it' > if (it != decoders_.end()) { > ^ > /Users/Aaron/myProgs/parquet-cpp/src/parquet.cc:176:7: error: reference to > 'shared_ptr' is ambiguous > shared_ptr<Decoder> decoder(new DictionaryDecoder(schema_->type, > &dictionary)); > ^ > /usr/local/include/boost/smart_ptr/shared_ptr.hpp:717:36: note: candidate > found by name lookup is 'boost::shared_ptr' > template<class Y> friend class shared_ptr; > ^ > /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/../include/c++/v1/memory:3750:29: > note: candidate > found by name lookup is 'std::__1::shared_ptr' > class _LIBCPP_TYPE_VIS_ONLY shared_ptr > ^ > /Users/Aaron/myProgs/parquet-cpp/src/parquet.cc:177:45: error: use of > undeclared identifier 'decoder'; did you mean 'decoders_'? > decoders_[Encoding::RLE_DICTIONARY] = decoder; > ^~~~~~~ > decoders_ > /Users/Aaron/myProgs/parquet-cpp/src/parquet/parquet.h:152:78: note: > 'decoders_' declared here > boost::unordered_map<parquet::Encoding::type, boost::shared_ptr<Decoder> > > decoders_; > ^ > /Users/Aaron/myProgs/parquet-cpp/src/parquet.cc:177:43: error: no viable > overloaded '=' > decoders_[Encoding::RLE_DICTIONARY] = decoder; > ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ^ ~~~~~~~ > /usr/local/include/boost/smart_ptr/shared_ptr.hpp:500:18: note: candidate > function not viable: no known conversion from > 'boost::unordered_map<parquet::Encoding::type, > boost::shared_ptr<Decoder> >' to 'const > boost::shared_ptr<parquet_cpp::Decoder>' for 1st > argument > shared_ptr & operator=( shared_ptr const & r ) BOOST_NOEXCEPT > ^ > /usr/local/include/boost/smart_ptr/shared_ptr.hpp:509:18: note: candidate > template ignored: could not match 'shared_ptr' against > 'unordered_map' > shared_ptr & operator=(shared_ptr<Y> const & r) BOOST_NOEXCEPT > ^ > /usr/local/include/boost/smart_ptr/shared_ptr.hpp:520:18: note: candidate > template ignored: could not match 'auto_ptr' against > 'unordered_map' > shared_ptr & operator=( std::auto_ptr<Y> & r ) > ^ > /usr/local/include/boost/smart_ptr/shared_ptr.hpp:538:77: note: candidate > template ignored: substitution failure [with Ap = > boost::unordered::unordered_map<parquet::Encoding::type, > boost::shared_ptr<parquet_cpp::Decoder>, boost::hash<parquet::Encoding::type>, > std::__1::equal_to<parquet::Encoding::type>, > std::__1::allocator<std::__1::pair<const parquet::Encoding::type, > boost::shared_ptr<parquet_cpp::Decoder> > > >]: no type named 'type' in > > 'boost::detail::sp_enable_if_auto_ptr<boost::unordered::unordered_map<parquet::Encoding::type, > boost::shared_ptr<parquet_cpp::Decoder>, > boost::hash<parquet::Encoding::type>, > std::__1::equal_to<parquet::Encoding::type>, > std::__1::allocator<std::__1::pair<const > parquet::Encoding::type, boost::shared_ptr<parquet_cpp::Decoder> > > >, > boost::shared_ptr<parquet_cpp::Decoder> &>' > typename boost::detail::sp_enable_if_auto_ptr< Ap, shared_ptr & >::type > operator=( Ap r ) > ~~~~ ^ > /Users/Aaron/myProgs/parquet-cpp/src/parquet.cc:202:37: error: reference to > 'shared_ptr' is ambiguous > unordered_map<Encoding::type, shared_ptr<Decoder> >::iterator it = > ^ > /usr/local/include/boost/smart_ptr/shared_ptr.hpp:717:36: note: candidate > found by name lookup is 'boost::shared_ptr' > template<class Y> friend class shared_ptr; > ^ > /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/../include/c++/v1/memory:3750:29: > note: candidate > found by name lookup is 'std::__1::shared_ptr' > class _LIBCPP_TYPE_VIS_ONLY shared_ptr > ^ > /Users/Aaron/myProgs/parquet-cpp/src/parquet.cc:202:48: error: 'Decoder' does > not refer to a value > unordered_map<Encoding::type, shared_ptr<Decoder> >::iterator it = > ^ > /Users/Aaron/myProgs/parquet-cpp/src/encodings/encodings.h:27:7: note: > declared here > class Decoder { > ^ > /Users/Aaron/myProgs/parquet-cpp/src/parquet.cc:204:11: error: use of > undeclared identifier 'it' > if (it != decoders_.end()) { > ^ > /Users/Aaron/myProgs/parquet-cpp/src/parquet.cc:205:28: error: use of > undeclared identifier 'it' > current_decoder_ = it->second.get(); > ^ > /Users/Aaron/myProgs/parquet-cpp/src/parquet.cc:209:13: error: reference to > 'shared_ptr' is ambiguous > shared_ptr<Decoder> decoder; > ^ > /usr/local/include/boost/smart_ptr/shared_ptr.hpp:717:36: note: candidate > found by name lookup is 'boost::shared_ptr' > template<class Y> friend class shared_ptr; > ^ > /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/../include/c++/v1/memory:3750:29: > note: candidate > found by name lookup is 'std::__1::shared_ptr' > class _LIBCPP_TYPE_VIS_ONLY shared_ptr > ^ > /Users/Aaron/myProgs/parquet-cpp/src/parquet.cc:211:15: error: use of > undeclared identifier 'decoder'; did you mean 'decoders_'? > decoder.reset(new BoolDecoder()); > ^~~~~~~ > decoders_ > /Users/Aaron/myProgs/parquet-cpp/src/parquet/parquet.h:152:78: note: > 'decoders_' declared here > boost::unordered_map<parquet::Encoding::type, boost::shared_ptr<Decoder> > > decoders_; > ^ > /Users/Aaron/myProgs/parquet-cpp/src/parquet.cc:211:23: error: no member > named 'reset' in > 'boost::unordered::unordered_map<parquet::Encoding::type, > boost::shared_ptr<parquet_cpp::Decoder>, > boost::hash<parquet::Encoding::type>, > std::__1::equal_to<parquet::Encoding::type>, > std::__1::allocator<std::__1::pair<const > parquet::Encoding::type, boost::shared_ptr<parquet_cpp::Decoder> > > >' > decoder.reset(new BoolDecoder()); > ~~~~~~~ ^ > /Users/Aaron/myProgs/parquet-cpp/src/parquet.cc:213:15: error: use of > undeclared identifier 'decoder'; did you mean 'decoders_'? > decoder.reset(new PlainDecoder(schema_->type)); > ^~~~~~~ > decoders_ > /Users/Aaron/myProgs/parquet-cpp/src/parquet/parquet.h:152:78: note: > 'decoders_' declared here > boost::unordered_map<parquet::Encoding::type, boost::shared_ptr<Decoder> > > decoders_; > ^ > /Users/Aaron/myProgs/parquet-cpp/src/parquet.cc:213:23: error: no member > named 'reset' in > 'boost::unordered::unordered_map<parquet::Encoding::type, > boost::shared_ptr<parquet_cpp::Decoder>, > boost::hash<parquet::Encoding::type>, > std::__1::equal_to<parquet::Encoding::type>, > std::__1::allocator<std::__1::pair<const > parquet::Encoding::type, boost::shared_ptr<parquet_cpp::Decoder> > > >' > decoder.reset(new PlainDecoder(schema_->type)); > ~~~~~~~ ^ > /Users/Aaron/myProgs/parquet-cpp/src/parquet.cc:215:35: error: use of > undeclared identifier 'decoder'; did you mean 'decoders_'? > decoders_[encoding] = decoder; > ^~~~~~~ > decoders_ > /Users/Aaron/myProgs/parquet-cpp/src/parquet/parquet.h:152:78: note: > 'decoders_' declared here > boost::unordered_map<parquet::Encoding::type, boost::shared_ptr<Decoder> > > decoders_; > ^ > /Users/Aaron/myProgs/parquet-cpp/src/parquet.cc:215:33: error: no viable > overloaded '=' > decoders_[encoding] = decoder; > ~~~~~~~~~~~~~~~~~~~ ^ ~~~~~~~ > /usr/local/include/boost/smart_ptr/shared_ptr.hpp:500:18: note: candidate > function not viable: no known conversion from > 'boost::unordered_map<parquet::Encoding::type, > boost::shared_ptr<Decoder> >' to 'const > boost::shared_ptr<parquet_cpp::Decoder>' for 1st > argument > shared_ptr & operator=( shared_ptr const & r ) BOOST_NOEXCEPT > ^ > /usr/local/include/boost/smart_ptr/shared_ptr.hpp:509:18: note: candidate > template ignored: could not match 'shared_ptr' against > 'unordered_map' > shared_ptr & operator=(shared_ptr<Y> const & r) BOOST_NOEXCEPT > ^ > /usr/local/include/boost/smart_ptr/shared_ptr.hpp:520:18: note: candidate > template ignored: could not match 'auto_ptr' against > 'unordered_map' > shared_ptr & operator=( std::auto_ptr<Y> & r ) > ^ > /usr/local/include/boost/smart_ptr/shared_ptr.hpp:538:77: note: candidate > template ignored: substitution failure [with Ap = > boost::unordered::unordered_map<parquet::Encoding::type, > boost::shared_ptr<parquet_cpp::Decoder>, boost::hash<parquet::Encoding::type>, > std::__1::equal_to<parquet::Encoding::type>, > std::__1::allocator<std::__1::pair<const parquet::Encoding::type, > boost::shared_ptr<parquet_cpp::Decoder> > > >]: no type named 'type' in > > 'boost::detail::sp_enable_if_auto_ptr<boost::unordered::unordered_map<parquet::Encoding::type, > boost::shared_ptr<parquet_cpp::Decoder>, > boost::hash<parquet::Encoding::type>, > std::__1::equal_to<parquet::Encoding::type>, > std::__1::allocator<std::__1::pair<const > parquet::Encoding::type, boost::shared_ptr<parquet_cpp::Decoder> > > >, > boost::shared_ptr<parquet_cpp::Decoder> &>' > typename boost::detail::sp_enable_if_auto_ptr< Ap, shared_ptr & >::type > operator=( Ap r ) > ~~~~ ^ > /Users/Aaron/myProgs/parquet-cpp/src/parquet.cc:216:32: error: use of > undeclared identifier 'decoder'; did you mean 'decoders_'? > current_decoder_ = decoder.get(); > ^~~~~~~ > decoders_ > /Users/Aaron/myProgs/parquet-cpp/src/parquet/parquet.h:152:78: note: > 'decoders_' declared here > boost::unordered_map<parquet::Encoding::type, boost::shared_ptr<Decoder> > > decoders_; > ^ > /Users/Aaron/myProgs/parquet-cpp/src/parquet.cc:216:40: error: no member > named 'get' in > 'boost::unordered::unordered_map<parquet::Encoding::type, > boost::shared_ptr<parquet_cpp::Decoder>, > boost::hash<parquet::Encoding::type>, > std::__1::equal_to<parquet::Encoding::type>, > std::__1::allocator<std::__1::pair<const > parquet::Encoding::type, boost::shared_ptr<parquet_cpp::Decoder> > > >' > current_decoder_ = decoder.get(); -- This message was sent by Atlassian JIRA (v6.3.4#6332)