You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@avro.apache.org by "Purushotham Nayak (JIRA)" <ji...@apache.org> on 2017/09/25 18:49:00 UTC

[jira] [Created] (AVRO-2081) Compilation fails with clang (v 3.8.0)

Purushotham Nayak created AVRO-2081:
---------------------------------------

             Summary: Compilation fails with clang (v 3.8.0)
                 Key: AVRO-2081
                 URL: https://issues.apache.org/jira/browse/AVRO-2081
             Project: Avro
          Issue Type: Bug
          Components: c++
    Affects Versions: 1.8.2
         Environment: FreeBSD, clang++ (3.8.0)
            Reporter: Purushotham Nayak
            Priority: Minor
             Fix For: 1.9.0


Building on {{clang}}  fails with the error below. This is because of the {{vector<bool>}} specialization. We need a {{codec_traits}} specialization for {{vector<bool>::const_reference}}.

{code}
avro/lang/c++/api/Specific.hh:321:22: error: no member named 'encode' in 'avro::codec_traits<std::__1::__bit_const_reference<std::__1::vector<bool, std::__1::allocator<bool> > > >'
    codec_traits<T>::encode(e, t);
    ~~~~~~~~~~~~~~~~~^
/home/annu/dev/workspace/avro/lang/c++/api/Specific.hh:235:23: note: in instantiation of function template specialization 'avro::encode<std::__1::__bit_const_reference<std::__1::vector<bool, std::__1::allocator<bool> > > >' requested here
                avro::encode(e, *it);
                      ^
/home/annu/dev/workspace/avro/lang/c++/api/Specific.hh:321:22: note: in instantiation of member function 'avro::codec_traits<std::__1::vector<bool, std::__1::allocator<bool> > >::encode' requested here
    codec_traits<T>::encode(e, t);
                     ^
{code}



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)