You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@parquet.apache.org by "Wes McKinney (JIRA)" <ji...@apache.org> on 2016/01/26 02:21:39 UTC

[jira] [Comment Edited] (PARQUET-238) Unable to Install C++ Driver - reference to 'share_ptr' is ambiguous

    [ 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)