g++ -I. -I./ -D_ISOC99_SOURCE -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -D_POSIX_C_SOURCE=200112 -D_XOPEN_SOURCE=600 -DZLIB_CONST -std=c11 -fomit-frame-pointer -pthread  -I/usr/include/harfbuzz -I/usr/include/glib-2.0 -I/usr/lib64/glib-2.0/include -I/usr/include/freetype2 -I/usr/include/fribidi -I/usr/include/freetype2 -I/usr/include/libdrm  -I/usr/include/freetype2 -D_REENTRANT -DOPENSSL_LOAD_CONF -pthread -I/usr/include/librsvg-2.0 -I/usr/include/gdk-pixbuf-2.0 -I/usr/include/cairo -I/usr/include/glib-2.0 -I/usr/lib64/glib-2.0/include -I/usr/include/pixman-1 -I/usr/include/freetype2 -I/usr/include/libdrm -I/usr/include/libpng12 -DOPENSSL_LOAD_CONF -I/usr//usr/include -I/usr//usr/include/srt            -DOPENSSL_LOAD_CONF -I/usr/include/alsa        -g -Wdeclaration-after-statement -Wall -Wdisabled-optimization -Wpointer-arith -Wredundant-decls -Wwrite-strings -Wtype-limits -Wundef -Wmissing-prototypes -Wno-pointer-to-int-cast -Wstrict-prototypes -Wempty-body -Wno-parentheses -Wno-switch -Wno-format-zero-length -Wno-pointer-sign -Wno-unused-const-variable -Wno-bool-operation -Wno-char-subscripts -O3 -fno-math-errno -fno-signed-zeros -fno-tree-vectorize -Werror=format-security -Werror=implicit-function-declaration -Werror=missing-prototypes -Werror=return-type -Werror=vla -Wformat -fdiagnostics-color=auto -Wno-maybe-uninitialized -D_REENTRANT -I/usr/include/SDL2  -D__STDC_CONSTANT_MACROS -std=c++11  -c -o libavdevice/decklink_dec.o libavdevice/decklink_dec.cpp

cc1plus: warning: command line option ‘-Wdeclaration-after-statement’ is valid for C/ObjC but not for C++
cc1plus: warning: command line option ‘-Wmissing-prototypes’ is valid for C/ObjC but not for C++
cc1plus: warning: command line option ‘-Wno-pointer-to-int-cast’ is valid for C/ObjC but not for C++
cc1plus: warning: command line option ‘-Wstrict-prototypes’ is valid for C/ObjC but not for C++
cc1plus: warning: command line option ‘-Wno-pointer-sign’ is valid for C/ObjC but not for C++
cc1plus: warning: ‘-Werror=’ argument ‘-Werror=implicit-function-declaration’ is not valid for C++
cc1plus: warning: ‘-Werror=’ argument ‘-Werror=missing-prototypes’ is not valid for C++
cc1plus: warning: command line option ‘-std=c11’ is valid for C/ObjC but not for C++
In file included from /usr/include/c++/7/ext/new_allocator.h:33:0,
                 from /usr/include/c++/7/x86_64-suse-linux/bits/c++allocator.h:33,
                 from /usr/include/c++/7/bits/allocator.h:46,
                 from /usr/include/c++/7/vector:61,
                 from libavdevice/decklink_dec.cpp:25:
./new:1:1: error: expected unqualified-id before ‘[’ token
 [PACKET]
 ^
In file included from /usr/include/c++/7/bits/allocator.h:46:0,
                 from /usr/include/c++/7/vector:61,
                 from libavdevice/decklink_dec.cpp:25:
/usr/include/c++/7/x86_64-suse-linux/bits/c++allocator.h:48:41: error: ‘new_allocator’ in namespace ‘__gnu_cxx’ does not name a template type
     using __allocator_base = __gnu_cxx::new_allocator<_Tp>;
                                         ^~~~~~~~~~~~~
In file included from /usr/include/c++/7/vector:61:0,
                 from libavdevice/decklink_dec.cpp:25:
/usr/include/c++/7/bits/allocator.h:108:45: error: expected template-name before ‘<’ token
     class allocator: public __allocator_base<_Tp>
                                             ^
/usr/include/c++/7/bits/allocator.h:108:45: error: expected ‘{’ before ‘<’ token
/usr/include/c++/7/bits/allocator.h:173:25: error: explicit instantiation of ‘class std::allocator<char>’ before definition of template
   extern template class allocator<char>;
                         ^~~~~~~~~~~~~~~
/usr/include/c++/7/bits/allocator.h:174:25: error: explicit instantiation of ‘class std::allocator<wchar_t>’ before definition of template
   extern template class allocator<wchar_t>;
                         ^~~~~~~~~~~~~~~~~~
In file included from /usr/include/c++/7/bits/stl_construct.h:59:0,
                 from /usr/include/c++/7/vector:62,
                 from libavdevice/decklink_dec.cpp:25:
./new:1:1: error: expected unqualified-id before ‘[’ token
 [PACKET]
 ^
In file included from /usr/include/c++/7/bits/stl_construct.h:61:0,
                 from /usr/include/c++/7/vector:62,
                 from libavdevice/decklink_dec.cpp:25:
/usr/include/c++/7/ext/alloc_traits.h:52:26: error: expected template-name before ‘<’ token
   : std::allocator_traits<_Alloc>
                          ^
/usr/include/c++/7/ext/alloc_traits.h:52:26: error: expected ‘{’ before ‘<’ token
In file included from /usr/include/c++/7/vector:64:0,
                 from libavdevice/decklink_dec.cpp:25:
/usr/include/c++/7/bits/stl_vector.h: In member function ‘void std::vector<_Tp, _Alloc>::_M_move_assign(std::vector<_Tp, _Alloc>&&, std::true_type)’:
/usr/include/c++/7/bits/stl_vector.h:1539:7: error: ‘__alloc_on_move’ is not a member of ‘std’
  std::__alloc_on_move(_M_get_Tp_allocator(), __x._M_get_Tp_allocator());
       ^~~~~~~~~~~~~~~
/usr/include/c++/7/bits/stl_vector.h:1539:7: note: suggested alternative: ‘__alloc_neq’
  std::__alloc_on_move(_M_get_Tp_allocator(), __x._M_get_Tp_allocator());
       ^~~~~~~~~~~~~~~
       __alloc_neq
In file included from /usr/include/c++/7/vector:65:0,
                 from libavdevice/decklink_dec.cpp:25:
/usr/include/c++/7/bits/stl_bvector.h: In member function ‘std::vector<bool, _Alloc>& std::vector<bool, _Alloc>::operator=(const std::vector<bool, _Alloc>&)’:
/usr/include/c++/7/bits/stl_bvector.h:692:13: error: ‘__alloc_on_copy’ is not a member of ‘std’
        std::__alloc_on_copy(_M_get_Bit_allocator(),
             ^~~~~~~~~~~~~~~
/usr/include/c++/7/bits/stl_bvector.h:692:13: note: suggested alternative: ‘__alloc_neq’
        std::__alloc_on_copy(_M_get_Bit_allocator(),
             ^~~~~~~~~~~~~~~
             __alloc_neq
/usr/include/c++/7/bits/stl_bvector.h:697:11: error: ‘__alloc_on_copy’ is not a member of ‘std’
      std::__alloc_on_copy(_M_get_Bit_allocator(),
           ^~~~~~~~~~~~~~~
/usr/include/c++/7/bits/stl_bvector.h:697:11: note: suggested alternative: ‘__alloc_neq’
      std::__alloc_on_copy(_M_get_Bit_allocator(),
           ^~~~~~~~~~~~~~~
           __alloc_neq
/usr/include/c++/7/bits/stl_bvector.h: In member function ‘std::vector<bool, _Alloc>& std::vector<bool, _Alloc>::operator=(std::vector<bool, _Alloc>&&)’:
/usr/include/c++/7/bits/stl_bvector.h:725:9: error: ‘__alloc_on_move’ is not a member of ‘std’
    std::__alloc_on_move(_M_get_Bit_allocator(),
         ^~~~~~~~~~~~~~~
/usr/include/c++/7/bits/stl_bvector.h:725:9: note: suggested alternative: ‘__alloc_neq’
    std::__alloc_on_move(_M_get_Bit_allocator(),
         ^~~~~~~~~~~~~~~
         __alloc_neq
In file included from /usr/include/c++/7/vector:69:0,
                 from libavdevice/decklink_dec.cpp:25:
/usr/include/c++/7/bits/vector.tcc: In member function ‘std::vector<_Tp, _Alloc>& std::vector<_Tp, _Alloc>::operator=(const std::vector<_Tp, _Alloc>&)’:
/usr/include/c++/7/bits/vector.tcc:199:13: error: ‘__alloc_on_copy’ is not a member of ‘std’
        std::__alloc_on_copy(_M_get_Tp_allocator(),
             ^~~~~~~~~~~~~~~
/usr/include/c++/7/bits/vector.tcc:199:13: note: suggested alternative: ‘__alloc_neq’
        std::__alloc_on_copy(_M_get_Tp_allocator(),
             ^~~~~~~~~~~~~~~
             __alloc_neq
In file included from /usr/include/c++/7/bits/stl_algo.h:62:0,
                 from /usr/include/c++/7/algorithm:62,
                 from libavdevice/decklink_dec.cpp:26:
/usr/include/c++/7/bits/stl_tempbuf.h: In function ‘std::pair<_Tp*, long int> std::get_temporary_buffer(std::ptrdiff_t)’:
/usr/include/c++/7/bits/stl_tempbuf.h:95:13: error: ‘nothrow’ is not a member of ‘std’
        std::nothrow));
             ^~~~~~~
/usr/include/c++/7/bits/stl_tempbuf.h: In function ‘void std::return_temporary_buffer(_Tp*)’:
/usr/include/c++/7/bits/stl_tempbuf.h:113:35: error: ‘nothrow’ is not a member of ‘std’
     { ::operator delete(__p, std::nothrow); }
                                   ^~~~~~~
In file included from /usr/include/c++/7/vector:64:0,
                 from libavdevice/decklink_dec.cpp:25:
/usr/include/c++/7/bits/stl_vector.h: In instantiation of ‘struct std::_Vector_base<unsigned char, std::allocator<unsigned char> >’:
/usr/include/c++/7/bits/stl_vector.h:216:11:   required from ‘class std::vector<unsigned char>’
libavdevice/decklink_dec.cpp:645:30:   required from here
/usr/include/c++/7/bits/stl_vector.h:77:21: error: invalid use of incomplete type ‘struct __gnu_cxx::__alloc_traits<std::allocator<unsigned char> >’
  rebind<_Tp>::other _Tp_alloc_type;
                     ^~~~~~~~~~~~~~
In file included from /usr/include/c++/7/bits/stl_construct.h:61:0,
                 from /usr/include/c++/7/vector:62,
                 from libavdevice/decklink_dec.cpp:25:
/usr/include/c++/7/ext/alloc_traits.h:50:10: note: declaration of ‘struct __gnu_cxx::__alloc_traits<std::allocator<unsigned char> >’
   struct __alloc_traits
          ^~~~~~~~~~~~~~
In file included from /usr/include/c++/7/vector:64:0,
                 from libavdevice/decklink_dec.cpp:25:
/usr/include/c++/7/bits/stl_vector.h:79:9: error: invalid use of incomplete type ‘struct __gnu_cxx::__alloc_traits<std::allocator<unsigned char> >’
         pointer;
         ^~~~~~~
In file included from /usr/include/c++/7/bits/stl_construct.h:61:0,
                 from /usr/include/c++/7/vector:62,
                 from libavdevice/decklink_dec.cpp:25:
/usr/include/c++/7/ext/alloc_traits.h:50:10: note: declaration of ‘struct __gnu_cxx::__alloc_traits<std::allocator<unsigned char> >’
   struct __alloc_traits
          ^~~~~~~~~~~~~~
In file included from /usr/include/c++/7/vector:64:0,
                 from libavdevice/decklink_dec.cpp:25:
/usr/include/c++/7/bits/stl_vector.h: In instantiation of ‘class std::vector<unsigned char>’:
libavdevice/decklink_dec.cpp:645:30:   required from here
/usr/include/c++/7/bits/stl_vector.h:247:20: error: no members matching ‘std::vector<unsigned char>::_Base {aka std::_Vector_base<unsigned char, std::allocator<unsigned char> >}::_M_allocate’ in ‘std::vector<unsigned char>::_Base {aka struct std::_Vector_base<unsigned char, std::allocator<unsigned char> >}’
       using _Base::_M_allocate;
                    ^~~~~~~~~~~
/usr/include/c++/7/bits/stl_vector.h:248:20: error: no members matching ‘std::vector<unsigned char>::_Base {aka std::_Vector_base<unsigned char, std::allocator<unsigned char> >}::_M_deallocate’ in ‘std::vector<unsigned char>::_Base {aka struct std::_Vector_base<unsigned char, std::allocator<unsigned char> >}’
       using _Base::_M_deallocate;
                    ^~~~~~~~~~~~~
/usr/include/c++/7/bits/stl_vector.h:250:20: error: no members matching ‘std::vector<unsigned char>::_Base {aka std::_Vector_base<unsigned char, std::allocator<unsigned char> >}::_M_get_Tp_allocator’ in ‘std::vector<unsigned char>::_Base {aka struct std::_Vector_base<unsigned char, std::allocator<unsigned char> >}’
       using _Base::_M_get_Tp_allocator;
                    ^~~~~~~~~~~~~~~~~~~
/usr/include/c++/7/bits/stl_vector.h: In instantiation of ‘struct std::_Vector_base<std::vector<handle_klv(AVFormatContext*, decklink_ctx*, IDeckLinkVideoInputFrame*, int64_t)::KLVPacket>, std::allocator<std::vector<handle_klv(AVFormatContext*, decklink_ctx*, IDeckLinkVideoInputFrame*, int64_t)::KLVPacket> > >’:
/usr/include/c++/7/bits/stl_vector.h:216:11:   required from ‘class std::vector<std::vector<handle_klv(AVFormatContext*, decklink_ctx*, IDeckLinkVideoInputFrame*, int64_t)::KLVPacket> >’
libavdevice/decklink_dec.cpp:649:52:   required from here
/usr/include/c++/7/bits/stl_vector.h:77:21: error: invalid use of incomplete type ‘struct __gnu_cxx::__alloc_traits<std::allocator<std::vector<handle_klv(AVFormatContext*, decklink_ctx*, IDeckLinkVideoInputFrame*, int64_t)::KLVPacket> > >’
  rebind<_Tp>::other _Tp_alloc_type;
                     ^~~~~~~~~~~~~~
In file included from /usr/include/c++/7/bits/stl_construct.h:61:0,
                 from /usr/include/c++/7/vector:62,
                 from libavdevice/decklink_dec.cpp:25:
/usr/include/c++/7/ext/alloc_traits.h:50:10: note: declaration of ‘struct __gnu_cxx::__alloc_traits<std::allocator<std::vector<handle_klv(AVFormatContext*, decklink_ctx*, IDeckLinkVideoInputFrame*, int64_t)::KLVPacket> > >’
   struct __alloc_traits
          ^~~~~~~~~~~~~~
In file included from /usr/include/c++/7/vector:64:0,
                 from libavdevice/decklink_dec.cpp:25:
/usr/include/c++/7/bits/stl_vector.h:79:9: error: invalid use of incomplete type ‘struct __gnu_cxx::__alloc_traits<std::allocator<std::vector<handle_klv(AVFormatContext*, decklink_ctx*, IDeckLinkVideoInputFrame*, int64_t)::KLVPacket> > >’
         pointer;
         ^~~~~~~
In file included from /usr/include/c++/7/bits/stl_construct.h:61:0,
                 from /usr/include/c++/7/vector:62,
                 from libavdevice/decklink_dec.cpp:25:
/usr/include/c++/7/ext/alloc_traits.h:50:10: note: declaration of ‘struct __gnu_cxx::__alloc_traits<std::allocator<std::vector<handle_klv(AVFormatContext*, decklink_ctx*, IDeckLinkVideoInputFrame*, int64_t)::KLVPacket> > >’
   struct __alloc_traits
          ^~~~~~~~~~~~~~
In file included from /usr/include/c++/7/vector:64:0,
                 from libavdevice/decklink_dec.cpp:25:
/usr/include/c++/7/bits/stl_vector.h: In instantiation of ‘class std::vector<std::vector<handle_klv(AVFormatContext*, decklink_ctx*, IDeckLinkVideoInputFrame*, int64_t)::KLVPacket> >’:
libavdevice/decklink_dec.cpp:649:52:   required from here
/usr/include/c++/7/bits/stl_vector.h:247:20: error: no members matching ‘std::vector<std::vector<handle_klv(AVFormatContext*, decklink_ctx*, IDeckLinkVideoInputFrame*, int64_t)::KLVPacket> >::_Base {aka std::_Vector_base<std::vector<handle_klv(AVFormatContext*, decklink_ctx*, IDeckLinkVideoInputFrame*, int64_t)::KLVPacket>, std::allocator<std::vector<handle_klv(AVFormatContext*, decklink_ctx*, IDeckLinkVideoInputFrame*, int64_t)::KLVPacket> > >}::_M_allocate’ in ‘std::vector<std::vector<handle_klv(AVFormatContext*, decklink_ctx*, IDeckLinkVideoInputFrame*, int64_t)::KLVPacket> >::_Base {aka struct std::_Vector_base<std::vector<handle_klv(AVFormatContext*, decklink_ctx*, IDeckLinkVideoInputFrame*, int64_t)::KLVPacket>, std::allocator<std::vector<handle_klv(AVFormatContext*, decklink_ctx*, IDeckLinkVideoInputFrame*, int64_t)::KLVPacket> > >}’
       using _Base::_M_allocate;
                    ^~~~~~~~~~~
/usr/include/c++/7/bits/stl_vector.h:248:20: error: no members matching ‘std::vector<std::vector<handle_klv(AVFormatContext*, decklink_ctx*, IDeckLinkVideoInputFrame*, int64_t)::KLVPacket> >::_Base {aka std::_Vector_base<std::vector<handle_klv(AVFormatContext*, decklink_ctx*, IDeckLinkVideoInputFrame*, int64_t)::KLVPacket>, std::allocator<std::vector<handle_klv(AVFormatContext*, decklink_ctx*, IDeckLinkVideoInputFrame*, int64_t)::KLVPacket> > >}::_M_deallocate’ in ‘std::vector<std::vector<handle_klv(AVFormatContext*, decklink_ctx*, IDeckLinkVideoInputFrame*, int64_t)::KLVPacket> >::_Base {aka struct std::_Vector_base<std::vector<handle_klv(AVFormatContext*, decklink_ctx*, IDeckLinkVideoInputFrame*, int64_t)::KLVPacket>, std::allocator<std::vector<handle_klv(AVFormatContext*, decklink_ctx*, IDeckLinkVideoInputFrame*, int64_t)::KLVPacket> > >}’
       using _Base::_M_deallocate;
                    ^~~~~~~~~~~~~
/usr/include/c++/7/bits/stl_vector.h:250:20: error: no members matching ‘std::vector<std::vector<handle_klv(AVFormatContext*, decklink_ctx*, IDeckLinkVideoInputFrame*, int64_t)::KLVPacket> >::_Base {aka std::_Vector_base<std::vector<handle_klv(AVFormatContext*, decklink_ctx*, IDeckLinkVideoInputFrame*, int64_t)::KLVPacket>, std::allocator<std::vector<handle_klv(AVFormatContext*, decklink_ctx*, IDeckLinkVideoInputFrame*, int64_t)::KLVPacket> > >}::_M_get_Tp_allocator’ in ‘std::vector<std::vector<handle_klv(AVFormatContext*, decklink_ctx*, IDeckLinkVideoInputFrame*, int64_t)::KLVPacket> >::_Base {aka struct std::_Vector_base<std::vector<handle_klv(AVFormatContext*, decklink_ctx*, IDeckLinkVideoInputFrame*, int64_t)::KLVPacket>, std::allocator<std::vector<handle_klv(AVFormatContext*, decklink_ctx*, IDeckLinkVideoInputFrame*, int64_t)::KLVPacket> > >}’
       using _Base::_M_get_Tp_allocator;
                    ^~~~~~~~~~~~~~~~~~~
/usr/include/c++/7/bits/stl_vector.h: In constructor ‘std::vector<_Tp, _Alloc>::vector(std::vector<_Tp, _Alloc>::size_type, const allocator_type&) [with _Tp = std::vector<handle_klv(AVFormatContext*, decklink_ctx*, IDeckLinkVideoInputFrame*, int64_t)::KLVPacket>; _Alloc = std::allocator<std::vector<handle_klv(AVFormatContext*, decklink_ctx*, IDeckLinkVideoInputFrame*, int64_t)::KLVPacket> >; std::vector<_Tp, _Alloc>::size_type = long unsigned int; std::vector<_Tp, _Alloc>::allocator_type = std::allocator<std::vector<handle_klv(AVFormatContext*, decklink_ctx*, IDeckLinkVideoInputFrame*, int64_t)::KLVPacket> >]’:
/usr/include/c++/7/bits/stl_vector.h:283:57: error: invalid use of incomplete type ‘std::vector<std::vector<handle_klv(AVFormatContext*, decklink_ctx*, IDeckLinkVideoInputFrame*, int64_t)::KLVPacket> >::allocator_type {aka class std::allocator<std::vector<handle_klv(AVFormatContext*, decklink_ctx*, IDeckLinkVideoInputFrame*, int64_t)::KLVPacket> >}’
       vector(size_type __n, const allocator_type& __a = allocator_type())
                                                         ^~~~~~~~~~~~~~~~
In file included from /usr/include/c++/7/vector:61:0,
                 from libavdevice/decklink_dec.cpp:25:
/usr/include/c++/7/bits/allocator.h:108:11: note: declaration of ‘std::vector<std::vector<handle_klv(AVFormatContext*, decklink_ctx*, IDeckLinkVideoInputFrame*, int64_t)::KLVPacket> >::allocator_type {aka class std::allocator<std::vector<handle_klv(AVFormatContext*, decklink_ctx*, IDeckLinkVideoInputFrame*, int64_t)::KLVPacket> >}’
     class allocator: public __allocator_base<_Tp>
           ^~~~~~~~~
libavdevice/decklink_dec.cpp:649:56: note:   when instantiating default argument for call to std::vector<_Tp, _Alloc>::vector(std::vector<_Tp, _Alloc>::size_type, const allocator_type&) [with _Tp = std::vector<handle_klv(AVFormatContext*, decklink_ctx*, IDeckLinkVideoInputFrame*, int64_t)::KLVPacket>; _Alloc = std::allocator<std::vector<handle_klv(AVFormatContext*, decklink_ctx*, IDeckLinkVideoInputFrame*, int64_t)::KLVPacket> >; std::vector<_Tp, _Alloc>::size_type = long unsigned int; std::vector<_Tp, _Alloc>::allocator_type = std::allocator<std::vector<handle_klv(AVFormatContext*, decklink_ctx*, IDeckLinkVideoInputFrame*, int64_t)::KLVPacket> >]
     std::vector<std::vector<KLVPacket>> klv_packets(256);
                                                        ^
libavdevice/decklink_dec.cpp: In function ‘void handle_klv(AVFormatContext*, decklink_ctx*, IDeckLinkVideoInputFrame*, int64_t)’:
libavdevice/decklink_dec.cpp:682:32: error: no match for ‘operator[]’ (operand types are ‘std::vector<std::vector<handle_klv(AVFormatContext*, decklink_ctx*, IDeckLinkVideoInputFrame*, int64_t)::KLVPacket> >’ and ‘uint8_t {aka unsigned char}’)
                     klv_packets[mid].push_back(std::move(packet));
                                ^
libavdevice/decklink_dec.cpp:695:37: error: no match for ‘operator[]’ (operand types are ‘std::vector<std::vector<handle_klv(AVFormatContext*, decklink_ctx*, IDeckLinkVideoInputFrame*, int64_t)::KLVPacket> >’ and ‘size_t {aka long unsigned int}’)
             auto& list = klv_packets[i];
                                     ^
libavdevice/decklink_dec.cpp:700:63: warning: format ‘%d’ expects argument of type ‘int’, but argument 4 has type ‘size_t {aka long unsigned int}’ [-Wformat=]
             av_log(avctx, AV_LOG_DEBUG, "Joining MID: %d\n", i);
                                                               ^
libavdevice/decklink_dec.cpp:706:33: error: unable to deduce ‘auto&&’ from ‘list’
             for (auto& packet : list)
                                 ^~~~
libavdevice/decklink_dec.cpp:707:21: error: ‘class std::vector<unsigned char>’ has no member named ‘insert’
                 klv.insert(klv.end(), packet.data.begin(), packet.data.end());
                     ^~~~~~
libavdevice/decklink_dec.cpp:707:32: error: ‘class std::vector<unsigned char>’ has no member named ‘end’
                 klv.insert(klv.end(), packet.data.begin(), packet.data.end());
                                ^~~
libavdevice/decklink_dec.cpp:640:19: warning: unused variable ‘KLV_IN_HANC_SDID’ [-Wunused-variable]
     const uint8_t KLV_IN_HANC_SDID = 0x14;
                   ^~~~~~~~~~~~~~~~
In file included from /usr/include/c++/7/vector:64:0,
                 from libavdevice/decklink_dec.cpp:25:
/usr/include/c++/7/bits/stl_vector.h: In instantiation of ‘std::vector<_Tp, _Alloc>::~vector() [with _Tp = std::vector<handle_klv(AVFormatContext*, decklink_ctx*, IDeckLinkVideoInputFrame*, int64_t)::KLVPacket>; _Alloc = std::allocator<std::vector<handle_klv(AVFormatContext*, decklink_ctx*, IDeckLinkVideoInputFrame*, int64_t)::KLVPacket> >]’:
libavdevice/decklink_dec.cpp:649:56:   required from here
/usr/include/c++/7/bits/stl_vector.h:434:37: error: ‘struct std::_Vector_base<std::vector<handle_klv(AVFormatContext*, decklink_ctx*, IDeckLinkVideoInputFrame*, int64_t)::KLVPacket>, std::allocator<std::vector<handle_klv(AVFormatContext*, decklink_ctx*, IDeckLinkVideoInputFrame*, int64_t)::KLVPacket> > >::_Vector_impl’ has no member named ‘_M_start’; did you mean ‘_M_swap_data’?
       { std::_Destroy(this->_M_impl._M_start, this->_M_impl._M_finish,
                       ~~~~~~~~~~~~~~^~~~~~~~
                       _M_swap_data
/usr/include/c++/7/bits/stl_vector.h:434:61: error: ‘struct std::_Vector_base<std::vector<handle_klv(AVFormatContext*, decklink_ctx*, IDeckLinkVideoInputFrame*, int64_t)::KLVPacket>, std::allocator<std::vector<handle_klv(AVFormatContext*, decklink_ctx*, IDeckLinkVideoInputFrame*, int64_t)::KLVPacket> > >::_Vector_impl’ has no member named ‘_M_finish’
       { std::_Destroy(this->_M_impl._M_start, this->_M_impl._M_finish,
                                               ~~~~~~~~~~~~~~^~~~~~~~~
/usr/include/c++/7/bits/stl_vector.h:435:28: error: ‘_M_get_Tp_allocator’ was not declared in this scope
         _M_get_Tp_allocator()); }
         ~~~~~~~~~~~~~~~~~~~^~
/usr/include/c++/7/bits/stl_vector.h:435:28: note: suggested alternative: ‘get_allocator’
         _M_get_Tp_allocator()); }
         ~~~~~~~~~~~~~~~~~~~^~
         get_allocator
/usr/include/c++/7/bits/stl_vector.h: In instantiation of ‘std::vector<_Tp, _Alloc>::~vector() [with _Tp = unsigned char; _Alloc = std::allocator<unsigned char>]’:
libavdevice/decklink_dec.cpp:678:43:   required from here
/usr/include/c++/7/bits/stl_vector.h:434:37: error: ‘struct std::_Vector_base<unsigned char, std::allocator<unsigned char> >::_Vector_impl’ has no member named ‘_M_start’; did you mean ‘_M_swap_data’?
       { std::_Destroy(this->_M_impl._M_start, this->_M_impl._M_finish,
                       ~~~~~~~~~~~~~~^~~~~~~~
                       _M_swap_data
/usr/include/c++/7/bits/stl_vector.h:434:61: error: ‘struct std::_Vector_base<unsigned char, std::allocator<unsigned char> >::_Vector_impl’ has no member named ‘_M_finish’
       { std::_Destroy(this->_M_impl._M_start, this->_M_impl._M_finish,
                                               ~~~~~~~~~~~~~~^~~~~~~~~
/usr/include/c++/7/bits/stl_vector.h:435:28: error: ‘_M_get_Tp_allocator’ was not declared in this scope
         _M_get_Tp_allocator()); }
         ~~~~~~~~~~~~~~~~~~~^~
/usr/include/c++/7/bits/stl_vector.h:435:28: note: suggested alternative: ‘get_allocator’
         _M_get_Tp_allocator()); }
         ~~~~~~~~~~~~~~~~~~~^~
         get_allocator
/usr/include/c++/7/bits/stl_vector.h: In instantiation of ‘void std::vector<_Tp, _Alloc>::resize(std::vector<_Tp, _Alloc>::size_type) [with _Tp = unsigned char; _Alloc = std::allocator<unsigned char>; std::vector<_Tp, _Alloc>::size_type = long unsigned int]’:
libavdevice/decklink_dec.cpp:679:48:   required from here
/usr/include/c++/7/bits/stl_vector.h:694:34: error: ‘struct std::_Vector_base<unsigned char, std::allocator<unsigned char> >::_Vector_impl’ has no member named ‘_M_start’; did you mean ‘_M_swap_data’?
    _M_erase_at_end(this->_M_impl._M_start + __new_size);
                    ~~~~~~~~~~~~~~^~~~~~~~
                    _M_swap_data
/usr/include/c++/7/bits/stl_vector.h:694:19: error: ‘_M_erase_at_end’ was not declared in this scope
    _M_erase_at_end(this->_M_impl._M_start + __new_size);
    ~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/7/bits/stl_vector.h:694:19: note: suggested alternative: ‘_M_default_append’
    _M_erase_at_end(this->_M_impl._M_start + __new_size);
    ~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    _M_default_append
/usr/include/c++/7/bits/stl_vector.h: In instantiation of ‘_Tp* std::vector<_Tp, _Alloc>::data() [with _Tp = unsigned char; _Alloc = std::allocator<unsigned char>]’:
libavdevice/decklink_dec.cpp:680:45:   required from here
/usr/include/c++/7/bits/stl_vector.h:921:42: error: ‘struct std::_Vector_base<unsigned char, std::allocator<unsigned char> >::_Vector_impl’ has no member named ‘_M_start’; did you mean ‘_M_swap_data’?
       { return _M_data_ptr(this->_M_impl._M_start); }
                            ~~~~~~~~~~~~~~^~~~~~~~
                            _M_swap_data
In file included from /usr/include/c++/7/vector:69:0,
                 from libavdevice/decklink_dec.cpp:25:
/usr/include/c++/7/bits/vector.tcc: In instantiation of ‘void std::vector<_Tp, _Alloc>::reserve(std::vector<_Tp, _Alloc>::size_type) [with _Tp = unsigned char; _Alloc = std::allocator<unsigned char>; std::vector<_Tp, _Alloc>::size_type = long unsigned int]’:
libavdevice/decklink_dec.cpp:692:31:   required from here
/usr/include/c++/7/bits/vector.tcc:76:32: error: ‘struct std::_Vector_base<unsigned char, std::allocator<unsigned char> >::_Vector_impl’ has no member named ‘_M_start’; did you mean ‘_M_swap_data’?
    std::_Destroy(this->_M_impl._M_start, this->_M_impl._M_finish,
                  ~~~~~~~~~~~~~~^~~~~~~~
                  _M_swap_data
/usr/include/c++/7/bits/vector.tcc:76:56: error: ‘struct std::_Vector_base<unsigned char, std::allocator<unsigned char> >::_Vector_impl’ has no member named ‘_M_finish’
    std::_Destroy(this->_M_impl._M_start, this->_M_impl._M_finish,
                                          ~~~~~~~~~~~~~~^~~~~~~~~
/usr/include/c++/7/bits/vector.tcc:77:23: error: ‘_M_get_Tp_allocator’ was not declared in this scope
    _M_get_Tp_allocator());
    ~~~~~~~~~~~~~~~~~~~^~
/usr/include/c++/7/bits/vector.tcc:77:23: note: suggested alternative: ‘get_allocator’
    _M_get_Tp_allocator());
    ~~~~~~~~~~~~~~~~~~~^~
    get_allocator
/usr/include/c++/7/bits/vector.tcc:78:32: error: ‘struct std::_Vector_base<unsigned char, std::allocator<unsigned char> >::_Vector_impl’ has no member named ‘_M_start’; did you mean ‘_M_swap_data’?
    _M_deallocate(this->_M_impl._M_start,
                  ~~~~~~~~~~~~~~^~~~~~~~
                  _M_swap_data
/usr/include/c++/7/bits/vector.tcc:79:18: error: ‘struct std::_Vector_base<unsigned char, std::allocator<unsigned char> >::_Vector_impl’ has no member named ‘_M_end_of_storage’
    this->_M_impl._M_end_of_storage
    ~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~
/usr/include/c++/7/bits/vector.tcc:80:20: error: ‘struct std::_Vector_base<unsigned char, std::allocator<unsigned char> >::_Vector_impl’ has no member named ‘_M_start’; did you mean ‘_M_swap_data’?
    - this->_M_impl._M_start);
      ~~~~~~~~~~~~~~^~~~~~~~
      _M_swap_data
/usr/include/c++/7/bits/vector.tcc:78:17: error: ‘_M_deallocate’ was not declared in this scope
    _M_deallocate(this->_M_impl._M_start,
    ~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~
    this->_M_impl._M_end_of_storage
    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    - this->_M_impl._M_start);
    ~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/7/bits/vector.tcc:78:17: note: suggested alternative: ‘av_realloc_f’
    _M_deallocate(this->_M_impl._M_start,
    ~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~
    -------------------------
    av_realloc_f
    this->_M_impl._M_end_of_storage
    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    -------------------------
    av_realloc_f
    - this->_M_impl._M_start);
    ~~~~~~~~~~~~~~~~~~~~~~~~~
    -------------------------
    av_realloc_f
/usr/include/c++/7/bits/vector.tcc:81:18: error: ‘struct std::_Vector_base<unsigned char, std::allocator<unsigned char> >::_Vector_impl’ has no member named ‘_M_start’; did you mean ‘_M_swap_data’?
    this->_M_impl._M_start = __tmp;
    ~~~~~~~~~~~~~~^~~~~~~~
    _M_swap_data
/usr/include/c++/7/bits/vector.tcc:82:18: error: ‘struct std::_Vector_base<unsigned char, std::allocator<unsigned char> >::_Vector_impl’ has no member named ‘_M_finish’
    this->_M_impl._M_finish = __tmp + __old_size;
    ~~~~~~~~~~~~~~^~~~~~~~~
/usr/include/c++/7/bits/vector.tcc:83:18: error: ‘struct std::_Vector_base<unsigned char, std::allocator<unsigned char> >::_Vector_impl’ has no member named ‘_M_end_of_storage’
    this->_M_impl._M_end_of_storage = this->_M_impl._M_start + __n;
    ~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~
/usr/include/c++/7/bits/vector.tcc:83:52: error: ‘struct std::_Vector_base<unsigned char, std::allocator<unsigned char> >::_Vector_impl’ has no member named ‘_M_start’; did you mean ‘_M_swap_data’?
    this->_M_impl._M_end_of_storage = this->_M_impl._M_start + __n;
                                      ~~~~~~~~~~~~~~^~~~~~~~
                                      _M_swap_data
In file included from /usr/include/c++/7/vector:64:0,
                 from libavdevice/decklink_dec.cpp:25:
/usr/include/c++/7/bits/stl_vector.h: In instantiation of ‘std::vector<_Tp, _Alloc>::size_type std::vector<_Tp, _Alloc>::size() const [with _Tp = std::vector<handle_klv(AVFormatContext*, decklink_ctx*, IDeckLinkVideoInputFrame*, int64_t)::KLVPacket>; _Alloc = std::allocator<std::vector<handle_klv(AVFormatContext*, decklink_ctx*, IDeckLinkVideoInputFrame*, int64_t)::KLVPacket> >; std::vector<_Tp, _Alloc>::size_type = long unsigned int]’:
libavdevice/decklink_dec.cpp:694:49:   required from here
/usr/include/c++/7/bits/stl_vector.h:671:40: error: ‘const struct std::_Vector_base<std::vector<handle_klv(AVFormatContext*, decklink_ctx*, IDeckLinkVideoInputFrame*, int64_t)::KLVPacket>, std::allocator<std::vector<handle_klv(AVFormatContext*, decklink_ctx*, IDeckLinkVideoInputFrame*, int64_t)::KLVPacket> > >::_Vector_impl’ has no member named ‘_M_finish’
       { return size_type(this->_M_impl._M_finish - this->_M_impl._M_start); }
                          ~~~~~~~~~~~~~~^~~~~~~~~
/usr/include/c++/7/bits/stl_vector.h:671:66: error: ‘const struct std::_Vector_base<std::vector<handle_klv(AVFormatContext*, decklink_ctx*, IDeckLinkVideoInputFrame*, int64_t)::KLVPacket>, std::allocator<std::vector<handle_klv(AVFormatContext*, decklink_ctx*, IDeckLinkVideoInputFrame*, int64_t)::KLVPacket> > >::_Vector_impl’ has no member named ‘_M_start’; did you mean ‘_M_swap_data’?
       { return size_type(this->_M_impl._M_finish - this->_M_impl._M_start); }
                                                    ~~~~~~~~~~~~~~^~~~~~~~
                                                    _M_swap_data
/usr/include/c++/7/bits/stl_vector.h: In instantiation of ‘std::vector<_Tp, _Alloc>::size_type std::vector<_Tp, _Alloc>::size() const [with _Tp = unsigned char; _Alloc = std::allocator<unsigned char>; std::vector<_Tp, _Alloc>::size_type = long unsigned int]’:
libavdevice/decklink_dec.cpp:717:36:   required from here
/usr/include/c++/7/bits/stl_vector.h:671:40: error: ‘const struct std::_Vector_base<unsigned char, std::allocator<unsigned char> >::_Vector_impl’ has no member named ‘_M_finish’
       { return size_type(this->_M_impl._M_finish - this->_M_impl._M_start); }
                          ~~~~~~~~~~~~~~^~~~~~~~~
/usr/include/c++/7/bits/stl_vector.h:671:66: error: ‘const struct std::_Vector_base<unsigned char, std::allocator<unsigned char> >::_Vector_impl’ has no member named ‘_M_start’; did you mean ‘_M_swap_data’?
       { return size_type(this->_M_impl._M_finish - this->_M_impl._M_start); }
                                                    ~~~~~~~~~~~~~~^~~~~~~~
                                                    _M_swap_data
/usr/include/c++/7/bits/stl_vector.h: In instantiation of ‘std::_Vector_base<_Tp, _Alloc>::_Vector_base(std::size_t, const allocator_type&) [with _Tp = std::vector<handle_klv(AVFormatContext*, decklink_ctx*, IDeckLinkVideoInputFrame*, int64_t)::KLVPacket>; _Alloc = std::allocator<std::vector<handle_klv(AVFormatContext*, decklink_ctx*, IDeckLinkVideoInputFrame*, int64_t)::KLVPacket> >; std::size_t = long unsigned int; std::_Vector_base<_Tp, _Alloc>::allocator_type = std::allocator<std::vector<handle_klv(AVFormatContext*, decklink_ctx*, IDeckLinkVideoInputFrame*, int64_t)::KLVPacket> >]’:
/usr/include/c++/7/bits/stl_vector.h:284:23:   required from ‘std::vector<_Tp, _Alloc>::vector(std::vector<_Tp, _Alloc>::size_type, const allocator_type&) [with _Tp = std::vector<handle_klv(AVFormatContext*, decklink_ctx*, IDeckLinkVideoInputFrame*, int64_t)::KLVPacket>; _Alloc = std::allocator<std::vector<handle_klv(AVFormatContext*, decklink_ctx*, IDeckLinkVideoInputFrame*, int64_t)::KLVPacket> >; std::vector<_Tp, _Alloc>::size_type = long unsigned int; std::vector<_Tp, _Alloc>::allocator_type = std::allocator<std::vector<handle_klv(AVFormatContext*, decklink_ctx*, IDeckLinkVideoInputFrame*, int64_t)::KLVPacket> >]’
libavdevice/decklink_dec.cpp:649:56:   required from here
/usr/include/c++/7/bits/stl_vector.h:137:20: error: no matching function for call to ‘std::_Vector_base<std::vector<handle_klv(AVFormatContext*, decklink_ctx*, IDeckLinkVideoInputFrame*, int64_t)::KLVPacket>, std::allocator<std::vector<handle_klv(AVFormatContext*, decklink_ctx*, IDeckLinkVideoInputFrame*, int64_t)::KLVPacket> > >::_Vector_impl::_Vector_impl(const allocator_type&)’
       : _M_impl(__a)
                    ^
/usr/include/c++/7/bits/stl_vector.h:88:2: note: candidate: std::_Vector_base<_Tp, _Alloc>::_Vector_impl::_Vector_impl() [with _Tp = std::vector<handle_klv(AVFormatContext*, decklink_ctx*, IDeckLinkVideoInputFrame*, int64_t)::KLVPacket>; _Alloc = std::allocator<std::vector<handle_klv(AVFormatContext*, decklink_ctx*, IDeckLinkVideoInputFrame*, int64_t)::KLVPacket> >]
  _Vector_impl()
  ^~~~~~~~~~~~
/usr/include/c++/7/bits/stl_vector.h:88:2: note:   candidate expects 0 arguments, 1 provided
/usr/include/c++/7/bits/stl_vector.h:81:14: note: candidate: constexpr std::_Vector_base<std::vector<handle_klv(AVFormatContext*, decklink_ctx*, IDeckLinkVideoInputFrame*, int64_t)::KLVPacket>, std::allocator<std::vector<handle_klv(AVFormatContext*, decklink_ctx*, IDeckLinkVideoInputFrame*, int64_t)::KLVPacket> > >::_Vector_impl::_Vector_impl(const std::_Vector_base<std::vector<handle_klv(AVFormatContext*, decklink_ctx*, IDeckLinkVideoInputFrame*, int64_t)::KLVPacket>, std::allocator<std::vector<handle_klv(AVFormatContext*, decklink_ctx*, IDeckLinkVideoInputFrame*, int64_t)::KLVPacket> > >::_Vector_impl&)
       struct _Vector_impl
              ^~~~~~~~~~~~
/usr/include/c++/7/bits/stl_vector.h:81:14: note:   no known conversion for argument 1 from ‘const allocator_type {aka const std::allocator<std::vector<handle_klv(AVFormatContext*, decklink_ctx*, IDeckLinkVideoInputFrame*, int64_t)::KLVPacket> >}’ to ‘const std::_Vector_base<std::vector<handle_klv(AVFormatContext*, decklink_ctx*, IDeckLinkVideoInputFrame*, int64_t)::KLVPacket>, std::allocator<std::vector<handle_klv(AVFormatContext*, decklink_ctx*, IDeckLinkVideoInputFrame*, int64_t)::KLVPacket> > >::_Vector_impl&’
/usr/include/c++/7/bits/stl_vector.h:81:14: note: candidate: constexpr std::_Vector_base<std::vector<handle_klv(AVFormatContext*, decklink_ctx*, IDeckLinkVideoInputFrame*, int64_t)::KLVPacket>, std::allocator<std::vector<handle_klv(AVFormatContext*, decklink_ctx*, IDeckLinkVideoInputFrame*, int64_t)::KLVPacket> > >::_Vector_impl::_Vector_impl(std::_Vector_base<std::vector<handle_klv(AVFormatContext*, decklink_ctx*, IDeckLinkVideoInputFrame*, int64_t)::KLVPacket>, std::allocator<std::vector<handle_klv(AVFormatContext*, decklink_ctx*, IDeckLinkVideoInputFrame*, int64_t)::KLVPacket> > >::_Vector_impl&&)
/usr/include/c++/7/bits/stl_vector.h:81:14: note:   no known conversion for argument 1 from ‘const allocator_type {aka const std::allocator<std::vector<handle_klv(AVFormatContext*, decklink_ctx*, IDeckLinkVideoInputFrame*, int64_t)::KLVPacket> >}’ to ‘std::_Vector_base<std::vector<handle_klv(AVFormatContext*, decklink_ctx*, IDeckLinkVideoInputFrame*, int64_t)::KLVPacket>, std::allocator<std::vector<handle_klv(AVFormatContext*, decklink_ctx*, IDeckLinkVideoInputFrame*, int64_t)::KLVPacket> > >::_Vector_impl&&’
/usr/include/c++/7/bits/stl_vector.h: In instantiation of ‘std::_Vector_base<_Tp, _Alloc>::~_Vector_base() [with _Tp = std::vector<handle_klv(AVFormatContext*, decklink_ctx*, IDeckLinkVideoInputFrame*, int64_t)::KLVPacket>; _Alloc = std::allocator<std::vector<handle_klv(AVFormatContext*, decklink_ctx*, IDeckLinkVideoInputFrame*, int64_t)::KLVPacket> >]’:
/usr/include/c++/7/bits/stl_vector.h:284:23:   required from ‘std::vector<_Tp, _Alloc>::vector(std::vector<_Tp, _Alloc>::size_type, const allocator_type&) [with _Tp = std::vector<handle_klv(AVFormatContext*, decklink_ctx*, IDeckLinkVideoInputFrame*, int64_t)::KLVPacket>; _Alloc = std::allocator<std::vector<handle_klv(AVFormatContext*, decklink_ctx*, IDeckLinkVideoInputFrame*, int64_t)::KLVPacket> >; std::vector<_Tp, _Alloc>::size_type = long unsigned int; std::vector<_Tp, _Alloc>::allocator_type = std::allocator<std::vector<handle_klv(AVFormatContext*, decklink_ctx*, IDeckLinkVideoInputFrame*, int64_t)::KLVPacket> >]’
libavdevice/decklink_dec.cpp:649:56:   required from here
/usr/include/c++/7/bits/stl_vector.h:162:37: error: ‘struct std::_Vector_base<std::vector<handle_klv(AVFormatContext*, decklink_ctx*, IDeckLinkVideoInputFrame*, int64_t)::KLVPacket>, std::allocator<std::vector<handle_klv(AVFormatContext*, decklink_ctx*, IDeckLinkVideoInputFrame*, int64_t)::KLVPacket> > >::_Vector_impl’ has no member named ‘_M_start’; did you mean ‘_M_swap_data’?
       { _M_deallocate(this->_M_impl._M_start, this->_M_impl._M_end_of_storage
                       ~~~~~~~~~~~~~~^~~~~~~~
                       _M_swap_data
/usr/include/c++/7/bits/stl_vector.h:162:61: error: ‘struct std::_Vector_base<std::vector<handle_klv(AVFormatContext*, decklink_ctx*, IDeckLinkVideoInputFrame*, int64_t)::KLVPacket>, std::allocator<std::vector<handle_klv(AVFormatContext*, decklink_ctx*, IDeckLinkVideoInputFrame*, int64_t)::KLVPacket> > >::_Vector_impl’ has no member named ‘_M_end_of_storage’
       { _M_deallocate(this->_M_impl._M_start, this->_M_impl._M_end_of_storage
                                               ~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~
/usr/include/c++/7/bits/stl_vector.h:163:25: error: ‘struct std::_Vector_base<std::vector<handle_klv(AVFormatContext*, decklink_ctx*, IDeckLinkVideoInputFrame*, int64_t)::KLVPacket>, std::allocator<std::vector<handle_klv(AVFormatContext*, decklink_ctx*, IDeckLinkVideoInputFrame*, int64_t)::KLVPacket> > >::_Vector_impl’ has no member named ‘_M_start’; did you mean ‘_M_swap_data’?
         - this->_M_impl._M_start); }
           ~~~~~~~~~~~~~~^~~~~~~~
           _M_swap_data
/usr/include/c++/7/bits/stl_vector.h:162:22: error: ‘_M_deallocate’ was not declared in this scope
       { _M_deallocate(this->_M_impl._M_start, this->_M_impl._M_end_of_storage
         ~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
         - this->_M_impl._M_start); }
         ~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/7/bits/stl_vector.h:162:22: note: suggested alternative: ‘av_realloc_f’
       { _M_deallocate(this->_M_impl._M_start, this->_M_impl._M_end_of_storage
         ~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
         -------------------------
         av_realloc_f
         - this->_M_impl._M_start); }
         ~~~~~~~~~~~~~~~~~~~~~~~~~
         -------------------------
         av_realloc_f
/usr/include/c++/7/bits/stl_vector.h: In instantiation of ‘void std::vector<_Tp, _Alloc>::_M_default_initialize(std::vector<_Tp, _Alloc>::size_type) [with _Tp = std::vector<handle_klv(AVFormatContext*, decklink_ctx*, IDeckLinkVideoInputFrame*, int64_t)::KLVPacket>; _Alloc = std::allocator<std::vector<handle_klv(AVFormatContext*, decklink_ctx*, IDeckLinkVideoInputFrame*, int64_t)::KLVPacket> >; std::vector<_Tp, _Alloc>::size_type = long unsigned int]’:
/usr/include/c++/7/bits/stl_vector.h:285:30:   required from ‘std::vector<_Tp, _Alloc>::vector(std::vector<_Tp, _Alloc>::size_type, const allocator_type&) [with _Tp = std::vector<handle_klv(AVFormatContext*, decklink_ctx*, IDeckLinkVideoInputFrame*, int64_t)::KLVPacket>; _Alloc = std::allocator<std::vector<handle_klv(AVFormatContext*, decklink_ctx*, IDeckLinkVideoInputFrame*, int64_t)::KLVPacket> >; std::vector<_Tp, _Alloc>::size_type = long unsigned int; std::vector<_Tp, _Alloc>::allocator_type = std::allocator<std::vector<handle_klv(AVFormatContext*, decklink_ctx*, IDeckLinkVideoInputFrame*, int64_t)::KLVPacket> >]’
libavdevice/decklink_dec.cpp:649:56:   required from here
/usr/include/c++/7/bits/stl_vector.h:1351:16: error: ‘struct std::_Vector_base<std::vector<handle_klv(AVFormatContext*, decklink_ctx*, IDeckLinkVideoInputFrame*, int64_t)::KLVPacket>, std::allocator<std::vector<handle_klv(AVFormatContext*, decklink_ctx*, IDeckLinkVideoInputFrame*, int64_t)::KLVPacket> > >::_Vector_impl’ has no member named ‘_M_finish’
  this->_M_impl._M_finish =
  ~~~~~~~~~~~~~~^~~~~~~~~
/usr/include/c++/7/bits/stl_vector.h:1352:51: error: ‘struct std::_Vector_base<std::vector<handle_klv(AVFormatContext*, decklink_ctx*, IDeckLinkVideoInputFrame*, int64_t)::KLVPacket>, std::allocator<std::vector<handle_klv(AVFormatContext*, decklink_ctx*, IDeckLinkVideoInputFrame*, int64_t)::KLVPacket> > >::_Vector_impl’ has no member named ‘_M_start’; did you mean ‘_M_swap_data’?
    std::__uninitialized_default_n_a(this->_M_impl._M_start, __n,
                                     ~~~~~~~~~~~~~~^~~~~~~~
                                     _M_swap_data
/usr/include/c++/7/bits/stl_vector.h:1353:28: error: ‘_M_get_Tp_allocator’ was not declared in this scope
         _M_get_Tp_allocator());
         ~~~~~~~~~~~~~~~~~~~^~
/usr/include/c++/7/bits/stl_vector.h:1353:28: note: suggested alternative: ‘get_allocator’
         _M_get_Tp_allocator());
         ~~~~~~~~~~~~~~~~~~~^~
         get_allocator
/usr/include/c++/7/bits/stl_vector.h: In instantiation of ‘std::_Vector_base<_Tp, _Alloc>::~_Vector_base() [with _Tp = unsigned char; _Alloc = std::allocator<unsigned char>]’:
/usr/include/c++/7/bits/stl_vector.h:263:15:   required from ‘std::vector<_Tp, _Alloc>::vector() [with _Tp = unsigned char; _Alloc = std::allocator<unsigned char>]’
libavdevice/decklink_dec.cpp:678:43:   required from here
/usr/include/c++/7/bits/stl_vector.h:162:37: error: ‘struct std::_Vector_base<unsigned char, std::allocator<unsigned char> >::_Vector_impl’ has no member named ‘_M_start’; did you mean ‘_M_swap_data’?
       { _M_deallocate(this->_M_impl._M_start, this->_M_impl._M_end_of_storage
                       ~~~~~~~~~~~~~~^~~~~~~~
                       _M_swap_data
/usr/include/c++/7/bits/stl_vector.h:162:61: error: ‘struct std::_Vector_base<unsigned char, std::allocator<unsigned char> >::_Vector_impl’ has no member named ‘_M_end_of_storage’
       { _M_deallocate(this->_M_impl._M_start, this->_M_impl._M_end_of_storage
                                               ~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~
/usr/include/c++/7/bits/stl_vector.h:163:25: error: ‘struct std::_Vector_base<unsigned char, std::allocator<unsigned char> >::_Vector_impl’ has no member named ‘_M_start’; did you mean ‘_M_swap_data’?
         - this->_M_impl._M_start); }
           ~~~~~~~~~~~~~~^~~~~~~~
           _M_swap_data
/usr/include/c++/7/bits/stl_vector.h:162:22: error: ‘_M_deallocate’ was not declared in this scope
       { _M_deallocate(this->_M_impl._M_start, this->_M_impl._M_end_of_storage
         ~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
         - this->_M_impl._M_start); }
         ~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/7/bits/stl_vector.h:162:22: note: suggested alternative: ‘av_realloc_f’
       { _M_deallocate(this->_M_impl._M_start, this->_M_impl._M_end_of_storage
         ~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
         -------------------------
         av_realloc_f
         - this->_M_impl._M_start); }
         ~~~~~~~~~~~~~~~~~~~~~~~~~
         -------------------------
         av_realloc_f
In file included from /usr/include/c++/7/vector:69:0,
                 from libavdevice/decklink_dec.cpp:25:
/usr/include/c++/7/bits/vector.tcc: In instantiation of ‘void std::vector<_Tp, _Alloc>::_M_default_append(std::vector<_Tp, _Alloc>::size_type) [with _Tp = unsigned char; _Alloc = std::allocator<unsigned char>; std::vector<_Tp, _Alloc>::size_type = long unsigned int]’:
/usr/include/c++/7/bits/stl_vector.h:692:21:   required from ‘void std::vector<_Tp, _Alloc>::resize(std::vector<_Tp, _Alloc>::size_type) [with _Tp = unsigned char; _Alloc = std::allocator<unsigned char>; std::vector<_Tp, _Alloc>::size_type = long unsigned int]’
libavdevice/decklink_dec.cpp:679:48:   required from here
/usr/include/c++/7/bits/vector.tcc:559:32: error: ‘struct std::_Vector_base<unsigned char, std::allocator<unsigned char> >::_Vector_impl’ has no member named ‘_M_end_of_storage’
    if (size_type(this->_M_impl._M_end_of_storage
                  ~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~
/usr/include/c++/7/bits/vector.tcc:560:20: error: ‘struct std::_Vector_base<unsigned char, std::allocator<unsigned char> >::_Vector_impl’ has no member named ‘_M_finish’
    - this->_M_impl._M_finish) >= __n)
      ~~~~~~~~~~~~~~^~~~~~~~~
/usr/include/c++/7/bits/vector.tcc:562:22: error: ‘struct std::_Vector_base<unsigned char, std::allocator<unsigned char> >::_Vector_impl’ has no member named ‘_M_finish’
        this->_M_impl._M_finish =
        ~~~~~~~~~~~~~~^~~~~~~~~
/usr/include/c++/7/bits/vector.tcc:563:50: error: ‘struct std::_Vector_base<unsigned char, std::allocator<unsigned char> >::_Vector_impl’ has no member named ‘_M_finish’
   std::__uninitialized_default_n_a(this->_M_impl._M_finish,
                                    ~~~~~~~~~~~~~~^~~~~~~~~
/usr/include/c++/7/bits/vector.tcc:564:32: error: ‘_M_get_Tp_allocator’ was not declared in this scope
        __n, _M_get_Tp_allocator());
             ~~~~~~~~~~~~~~~~~~~^~
/usr/include/c++/7/bits/vector.tcc:564:32: note: suggested alternative: ‘get_allocator’
        __n, _M_get_Tp_allocator());
             ~~~~~~~~~~~~~~~~~~~^~
             get_allocator
/usr/include/c++/7/bits/vector.tcc:576:34: error: ‘_M_get_Tp_allocator’ was not declared in this scope
          __n, _M_get_Tp_allocator());
               ~~~~~~~~~~~~~~~~~~~^~
/usr/include/c++/7/bits/vector.tcc:576:34: note: suggested alternative: ‘get_allocator’
          __n, _M_get_Tp_allocator());
               ~~~~~~~~~~~~~~~~~~~^~
               get_allocator
/usr/include/c++/7/bits/vector.tcc:579:23: error: ‘struct std::_Vector_base<unsigned char, std::allocator<unsigned char> >::_Vector_impl’ has no member named ‘_M_start’; did you mean ‘_M_swap_data’?
         this->_M_impl._M_start, this->_M_impl._M_finish,
         ~~~~~~~~~~~~~~^~~~~~~~
         _M_swap_data
/usr/include/c++/7/bits/vector.tcc:579:47: error: ‘struct std::_Vector_base<unsigned char, std::allocator<unsigned char> >::_Vector_impl’ has no member named ‘_M_finish’
         this->_M_impl._M_start, this->_M_impl._M_finish,
                                 ~~~~~~~~~~~~~~^~~~~~~~~
/usr/include/c++/7/bits/vector.tcc:586:26: error: ‘_M_get_Tp_allocator’ was not declared in this scope
       _M_get_Tp_allocator());
       ~~~~~~~~~~~~~~~~~~~^~
/usr/include/c++/7/bits/vector.tcc:586:26: note: suggested alternative: ‘get_allocator’
       _M_get_Tp_allocator());
       ~~~~~~~~~~~~~~~~~~~^~
       get_allocator
/usr/include/c++/7/bits/vector.tcc:587:18: error: ‘_M_deallocate’ was not declared in this scope
     _M_deallocate(__new_start, __len);
     ~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~
/usr/include/c++/7/bits/vector.tcc:587:18: note: suggested alternative: ‘av_realloc_f’
     _M_deallocate(__new_start, __len);
     ~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~
     av_realloc_f
/usr/include/c++/7/bits/vector.tcc:590:36: error: ‘struct std::_Vector_base<unsigned char, std::allocator<unsigned char> >::_Vector_impl’ has no member named ‘_M_start’; did you mean ‘_M_swap_data’?
        std::_Destroy(this->_M_impl._M_start, this->_M_impl._M_finish,
                      ~~~~~~~~~~~~~~^~~~~~~~
                      _M_swap_data
/usr/include/c++/7/bits/vector.tcc:590:60: error: ‘struct std::_Vector_base<unsigned char, std::allocator<unsigned char> >::_Vector_impl’ has no member named ‘_M_finish’
        std::_Destroy(this->_M_impl._M_start, this->_M_impl._M_finish,
                                              ~~~~~~~~~~~~~~^~~~~~~~~
/usr/include/c++/7/bits/vector.tcc:591:27: error: ‘_M_get_Tp_allocator’ was not declared in this scope
        _M_get_Tp_allocator());
        ~~~~~~~~~~~~~~~~~~~^~
/usr/include/c++/7/bits/vector.tcc:591:27: note: suggested alternative: ‘get_allocator’
        _M_get_Tp_allocator());
        ~~~~~~~~~~~~~~~~~~~^~
        get_allocator
/usr/include/c++/7/bits/vector.tcc:592:36: error: ‘struct std::_Vector_base<unsigned char, std::allocator<unsigned char> >::_Vector_impl’ has no member named ‘_M_start’; did you mean ‘_M_swap_data’?
        _M_deallocate(this->_M_impl._M_start,
                      ~~~~~~~~~~~~~~^~~~~~~~
                      _M_swap_data
/usr/include/c++/7/bits/vector.tcc:593:22: error: ‘struct std::_Vector_base<unsigned char, std::allocator<unsigned char> >::_Vector_impl’ has no member named ‘_M_end_of_storage’
        this->_M_impl._M_end_of_storage
        ~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~
/usr/include/c++/7/bits/vector.tcc:594:24: error: ‘struct std::_Vector_base<unsigned char, std::allocator<unsigned char> >::_Vector_impl’ has no member named ‘_M_start’; did you mean ‘_M_swap_data’?
        - this->_M_impl._M_start);
          ~~~~~~~~~~~~~~^~~~~~~~
          _M_swap_data
/usr/include/c++/7/bits/vector.tcc:592:21: error: ‘_M_deallocate’ was not declared in this scope
        _M_deallocate(this->_M_impl._M_start,
        ~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~
        this->_M_impl._M_end_of_storage
        ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
        - this->_M_impl._M_start);
        ~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/7/bits/vector.tcc:592:21: note: suggested alternative: ‘av_realloc_f’
        _M_deallocate(this->_M_impl._M_start,
        ~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~
        -------------------------
        av_realloc_f
        this->_M_impl._M_end_of_storage
        ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
        -------------------------
        av_realloc_f
        - this->_M_impl._M_start);
        ~~~~~~~~~~~~~~~~~~~~~~~~~
        -------------------------
        av_realloc_f
/usr/include/c++/7/bits/vector.tcc:595:22: error: ‘struct std::_Vector_base<unsigned char, std::allocator<unsigned char> >::_Vector_impl’ has no member named ‘_M_start’; did you mean ‘_M_swap_data’?
        this->_M_impl._M_start = __new_start;
        ~~~~~~~~~~~~~~^~~~~~~~
        _M_swap_data
/usr/include/c++/7/bits/vector.tcc:596:22: error: ‘struct std::_Vector_base<unsigned char, std::allocator<unsigned char> >::_Vector_impl’ has no member named ‘_M_finish’
        this->_M_impl._M_finish = __new_start + __size + __n;
        ~~~~~~~~~~~~~~^~~~~~~~~
/usr/include/c++/7/bits/vector.tcc:597:22: error: ‘struct std::_Vector_base<unsigned char, std::allocator<unsigned char> >::_Vector_impl’ has no member named ‘_M_end_of_storage’
        this->_M_impl._M_end_of_storage = __new_start + __len;
        ~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~
In file included from /usr/include/c++/7/vector:64:0,
                 from libavdevice/decklink_dec.cpp:25:
/usr/include/c++/7/bits/stl_vector.h: In instantiation of ‘std::vector<_Tp, _Alloc>::size_type std::vector<_Tp, _Alloc>::max_size() const [with _Tp = unsigned char; _Alloc = std::allocator<unsigned char>; std::vector<_Tp, _Alloc>::size_type = long unsigned int]’:
/usr/include/c++/7/bits/vector.tcc:68:23:   required from ‘void std::vector<_Tp, _Alloc>::reserve(std::vector<_Tp, _Alloc>::size_type) [with _Tp = unsigned char; _Alloc = std::allocator<unsigned char>; std::vector<_Tp, _Alloc>::size_type = long unsigned int]’
libavdevice/decklink_dec.cpp:692:31:   required from here
/usr/include/c++/7/bits/stl_vector.h:676:59: error: ‘_M_get_Tp_allocator’ was not declared in this scope
       { return _Alloc_traits::max_size(_M_get_Tp_allocator()); }
                                        ~~~~~~~~~~~~~~~~~~~^~
/usr/include/c++/7/bits/stl_vector.h:676:59: note: suggested alternative: ‘get_allocator’
       { return _Alloc_traits::max_size(_M_get_Tp_allocator()); }
                                        ~~~~~~~~~~~~~~~~~~~^~
                                        get_allocator
/usr/include/c++/7/bits/stl_vector.h: In instantiation of ‘std::vector<_Tp, _Alloc>::size_type std::vector<_Tp, _Alloc>::capacity() const [with _Tp = unsigned char; _Alloc = std::allocator<unsigned char>; std::vector<_Tp, _Alloc>::size_type = long unsigned int]’:
/usr/include/c++/7/bits/vector.tcc:70:17:   required from ‘void std::vector<_Tp, _Alloc>::reserve(std::vector<_Tp, _Alloc>::size_type) [with _Tp = unsigned char; _Alloc = std::allocator<unsigned char>; std::vector<_Tp, _Alloc>::size_type = long unsigned int]’
libavdevice/decklink_dec.cpp:692:31:   required from here
/usr/include/c++/7/bits/stl_vector.h:751:40: error: ‘const struct std::_Vector_base<unsigned char, std::allocator<unsigned char> >::_Vector_impl’ has no member named ‘_M_end_of_storage’
       { return size_type(this->_M_impl._M_end_of_storage
                          ~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~
/usr/include/c++/7/bits/stl_vector.h:752:21: error: ‘const struct std::_Vector_base<unsigned char, std::allocator<unsigned char> >::_Vector_impl’ has no member named ‘_M_start’; did you mean ‘_M_swap_data’?
     - this->_M_impl._M_start); }
       ~~~~~~~~~~~~~~^~~~~~~~
       _M_swap_data
/usr/include/c++/7/bits/stl_vector.h: In instantiation of ‘std::_Vector_base<_Tp, _Alloc>::_Vector_impl::_Vector_impl() [with _Tp = unsigned char; _Alloc = std::allocator<unsigned char>]’:
/usr/include/c++/7/bits/stl_vector.h:127:17:   required from ‘std::_Vector_base<_Tp, _Alloc>::_Vector_base() [with _Tp = unsigned char; _Alloc = std::allocator<unsigned char>]’
/usr/include/c++/7/bits/stl_vector.h:263:15:   required from ‘std::vector<_Tp, _Alloc>::vector() [with _Tp = unsigned char; _Alloc = std::allocator<unsigned char>]’
libavdevice/decklink_dec.cpp:678:43:   required from here
/usr/include/c++/7/bits/stl_vector.h:89:65: error: invalid use of incomplete type ‘struct __gnu_cxx::__alloc_traits<std::allocator<unsigned char> >’
  : _Tp_alloc_type(), _M_start(), _M_finish(), _M_end_of_storage()
                                                                 ^
In file included from /usr/include/c++/7/bits/stl_construct.h:61:0,
                 from /usr/include/c++/7/vector:62,
                 from libavdevice/decklink_dec.cpp:25:
/usr/include/c++/7/ext/alloc_traits.h:50:10: note: declaration of ‘struct __gnu_cxx::__alloc_traits<std::allocator<unsigned char> >’
   struct __alloc_traits
          ^~~~~~~~~~~~~~
In file included from /usr/include/c++/7/vector:64:0,
                 from libavdevice/decklink_dec.cpp:25:
/usr/include/c++/7/bits/stl_vector.h:89:65: error: using invalid field ‘std::_Vector_base<_Tp, _Alloc>::_Vector_impl::_M_start’
  : _Tp_alloc_type(), _M_start(), _M_finish(), _M_end_of_storage()
                                                                 ^
/usr/include/c++/7/bits/stl_vector.h:89:65: error: using invalid field ‘std::_Vector_base<_Tp, _Alloc>::_Vector_impl::_M_finish’
/usr/include/c++/7/bits/stl_vector.h:89:65: error: using invalid field ‘std::_Vector_base<_Tp, _Alloc>::_Vector_impl::_M_end_of_storage’
