Closed lcordier closed 4 years ago
Oh, sorry to hear it didn't build for you.
Hmm, that's super weird that it would fail like that, not printing anything besides "recipe for target 'src/widget_list.o' failed".
Can you try just running (at the top directory): make src/widget_list.o
Does it print anything else that might explain why that recipe failed?
I guess another command to try would be to just run the compiler directly. This may give us a hint as to what's wrong. Something like: g++ -I. -std=c++17 -g -Wall -Wextra -Iglog-0.4.0/src -c -g -O2 src/widget_list.cc
Thanks for your help. I hope we can figure out soon what's at work here.
Hello there. I could reproduce. GCC 7.5.0.
src/widget_list.cc: In member function ‘virtual std::unique_ptr<afc::editor::OutputProducer> afc::editor::WidgetListHorizontal::CreateOutputProducer(afc::editor::Widget::OutputProducerOptions) const’: src/widget_list.cc:259:68: sorry, unimplemented: non-trivial designated initializers not supported FrameOutputProducer::Options::ActiveState::kActive}), ^ src/widget_list.cc:259:68: sorry, unimplemented: non-trivial designated initializers not supported src/widget_list.cc:260:29: error: no matching function for call to ‘std::vector<afc::editor::HorizontalSplitOutputProducer::Row>::push_back(<brace-enclosed initializer list>)’ LineNumberDelta(1)}); ^ In file included from /usr/include/c++/7/vector:64:0, from ./src/buffers_list.h:6, from ./src/widget_list.h:7, from src/widget_list.cc:1: /usr/include/c++/7/bits/stl_vector.h:939:7: note: candidate: void std::vector<_Tp, _Alloc>::push_back(const value_type&) [with _Tp = afc::editor::HorizontalSplitOutputProducer::Row; _Alloc = std::allocator<afc::editor::HorizontalSplitOutputProducer::Row>; std::vector<_Tp, _Alloc>::value_type = afc::editor::HorizontalSplitOutputProducer::Row] push_back(const value_type& __x) ^~~~~~~~~ /usr/include/c++/7/bits/stl_vector.h:939:7: note: no known conversion for argument 1 from ‘<brace-enclosed initializer list>’ to ‘const value_type& {aka const afc::editor::HorizontalSplitOutputProducer::Row&}’ /usr/include/c++/7/bits/stl_vector.h:953:7: note: candidate: void std::vector<_Tp, _Alloc>::push_back(std::vector<_Tp, _Alloc>::value_type&&) [with _Tp = afc::editor::HorizontalSplitOutputProducer::Row; _Alloc = std::allocator<afc::editor::HorizontalSplitOutputProducer::Row>; std::vector<_Tp, _Alloc>::value_type = afc::editor::HorizontalSplitOutputProducer::Row] push_back(value_type&& __x) ^~~~~~~~~ /usr/include/c++/7/bits/stl_vector.h:953:7: note: no known conversion for argument 1 from ‘<brace-enclosed initializer list>’ to ‘std::vector<afc::editor::HorizontalSplitOutputProducer::Row>::value_type&& {aka afc::editor::HorizontalSplitOutputProducer::Row&&}’
I compiled with clang-10 and clang++10 and I had to compile lemon.c by hand, removing the c++17 option for the C compiler. Then I got this:
in file included from ./src/async_processor.h:14: ./src/futures/futures.h:146:52: warning: lambda capture 'end' is not used [-Wunused-lambda-capture] callable(*begin).SetConsumer([consumer, begin, end, callable, resume]( ^ ./src/futures/futures.h:155:3: note: in instantiation of function template specialization 'afc::futures::ForEach(__gnu_cxx::__normal_iterator<std::shared_ptr<afc::editor::OpenBuffer> *, std::vector<std::shared_ptr<afc::editor::OpenBuffer>, std::allocator<std::shared_ptr<afc::editor::OpenBuffer> > > >, __gnu_cxx::__normal_iterator<std::shared_ptr<afc::editor::OpenBuffer> *, std::vector<std::shared_ptr<afc::editor::OpenBuffer>, std::allocator<std::shared_ptr<afc::editor::OpenBuffer> > > >, std::function<afc::futures::Value<afc::futures::IterationControlCommand> (const std::shared_ptr<afc::editor::OpenBuffer> &)>)::(anonymous class)::operator()<(lambda at ./src/futures/futures.h:140:17)>' requested here resume(begin, resume); ^ ./src/command_argument_mode.h:131:22: note: in instantiation of function template specialization 'afc::futures::ForEach<__gnu_cxx::__normal_iterator<std::shared_ptr<afc::editor::OpenBuffer> *, std::vector<std::shared_ptr<afc::editor::OpenBuffer>, std::allocator<std::shared_ptr<afc::editor::OpenBuffer> > > >, std::function<afc::futures::Value<afc::futures::IterationControlCommand> (const std::shared_ptr<afc::editor::OpenBuffer> &)> >' requested here futures::ForEach(buffers->begin(), buffers->end(), callback), ^ src/command_with_modifiers.cc:217:10: note: in instantiation of function template specialization 'afc::editor::SetOptionsForBufferTransformation<afc::editor::Modifiers>' requested here SetOptionsForBufferTransformation<Modifiers>( ^ In file included from src/command_with_modifiers.cc:6: ./src/command_argument_mode.h:59:14: error: case value evaluates to -7, which cannot be narrowed to type 'wint_t' (aka 'unsigned int') [-Wc++11-narrowing] case Terminal::BACKSPACE: ^ ./src/command_argument_mode.h:46:3: note: in instantiation of member function 'afc::editor::CommandArgumentMode<afc::editor::Modifiers>::ProcessInput' requested here CommandArgumentMode(Options options) ^ /usr/bin/../lib/gcc/x86_64-linux-gnu/7.5.0/../../../../include/c++/7.5.0/bits/unique_ptr.h:821:34: note: in instantiation of member function 'afc::editor::CommandArgumentMode<afc::editor::Modifiers>::CommandArgumentMode' requested here { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } ^ src/command_with_modifiers.cc:223:22: note: in instantiation of function template specialization 'std::make_unique<afc::editor::CommandArgumentMode<afc::editor::Modifiers>, afc::editor::CommandArgumentMode<afc::editor::Modifiers>::Options>' requested here return std::make_unique<CommandArgumentMode<Modifiers>>( ^
I hope it helps.
Thanks for your effort but I am learning to become more proficient with Vim and I don't want to learn yet another editor so I am taking that route. Hope this helped someone else.
Well, the issue is still open, per the brilliant Arhuaco. :-) But I don't know that I'll be able to get to it anytime soon, so... :-(
Yes I am still on 18.04 ;)
configure
make