In file included from u7shp.cc:16: In file included from ../files/databuf.h:29: ../files/U7obj.h:42:6: error: function definition does not declare parameters int index{-1}; ^ ../files/U7obj.h:46:14: error: member initializer 'index' does not name a non-static data member or base class : name(n), index(i) {} ^~~~~~~~ ../files/U7obj.h:49:25: error: member initializer 'index' does not name a non-static data member or base class : name(std::move(n)), index(i) {} ^~~~~~~~ ../files/U7obj.h:52:48: error: no member named 'index' in 'File_spec' return cmp < 0 || (cmp == 0 && index < other.index); ~~~~~ ^ ../files/U7obj.h:76:21: error: expected ';' at end of declaration list virtual ~U7object() noexcept = default; ^ ; ../files/U7obj.h:116:18: error: expected ';' at end of declaration list ~U7multiobject() noexcept final = default; ^ ; In file included from u7shp.cc:16: In file included from ../files/databuf.h:30: ../files/utils.h:479:15: error: expected expression auto two = [](auto c) {return 1U << c;}; ^ ../files/utils.h:480:15: error: expected expression auto mask = [&](auto c) {return static_cast(std::numeric_limits::max() / (two(two(c)) + 1U));}; ^ ../files/utils.h:481:15: error: expected expression auto count = [&](auto x, auto c) {return (x & mask(c)) + ((x >> two(c)) & mask(c));}; ^ In file included from u7shp.cc:16: ../files/databuf.h:42:28: error: expected ';' at end of declaration list IDataSource(IDataSource&&) noexcept = default; ^ ; ../files/databuf.h:43:39: error: expected ';' at end of declaration list IDataSource& operator=(IDataSource&&) noexcept = default; ^ ; ../files/databuf.h:44:24: error: expected ';' at end of declaration list virtual ~IDataSource() noexcept = default; ^ ; ../files/databuf.h:56:19: error: no member named 'make_unique' in namespace 'std' auto ptr = std::make_unique(N); ~~~~~^ ../files/databuf.h:56:40: error: expected '(' for function-style cast or type construction auto ptr = std::make_unique(N); ~~~~~~~~ ^ ../files/databuf.h:208:5: error: delegating constructors are permitted only in C++11 : IBufferDataView(data_.get(), len) { ^~~~~~~~~~~~~~~ ../files/databuf.h:295:2: error: 'auto' not allowed in function return type auto steal_data(size_t& len) { ^~~~ ../files/databuf.h:297:10: error: no viable conversion from returned value of type 'typename remove_reference &>::type' (aka 'std::unique_ptr') to function return type 'int' return std::move(data); ^~~~~~~~~~~~~~~ ../files/databuf.h:308:5: error: call to constructor of 'IBufferDataSource' is ambiguous : IBufferDataSource(nullptr, 0) { ^ ~~~~~~~~~~ ../files/databuf.h:289:2: note: candidate constructor IBufferDataSource(void *data_, size_t len) ^ ../files/databuf.h:292:2: note: candidate constructor IBufferDataSource(std::unique_ptr data_, size_t len) ^ ../files/databuf.h:315:5: error: call to constructor of 'IBufferDataSource' is ambiguous : IBufferDataSource(nullptr, 0) { ^ ~~~~~~~~~~ ../files/databuf.h:289:2: note: candidate constructor IBufferDataSource(void *data_, size_t len) ^ ../files/databuf.h:292:2: note: candidate constructor IBufferDataSource(std::unique_ptr data_, size_t len) ^ fatal error: too many errors emitted, stopping now [-ferror-limit=]