In file included from /usr/include/x86_64-linux-gnu/c++/10/bits/c++allocator.h:33,
from /usr/include/c++/10/bits/allocator.h:46,
from /usr/include/c++/10/vector:64,
from job.h:5,
from job.cpp:1:
/usr/include/c++/10/ext/new_allocator.h: In instantiation of 'void __gnu_cxx::new_allocator<_Tp>::construct(_Up*, _Args&& ...) [with _Up = Job; _Args = {int&, int&, int&}; _Tp = std::_Rb_tree_node<Job>]':
/usr/include/c++/10/bits/alloc_traits.h:512:17: required from 'static void std::allocator_traits<std::allocator<_Tp1> >::construct(std::allocator_traits<std::allocator<_Tp1> >::allocator_type&, _Up*, _Args&& ...) [with _Up = Job; _Args = {int&, int&, int&}; _Tp = std::_Rb_tree_node<Job>; std::allocator_traits<std::allocator<_Tp1> >::allocator_type = std::allocator<std::_Rb_tree_node<Job> >]'
/usr/include/c++/10/bits/stl_tree.h:618:32: required from 'void std::_Rb_tree<_Key, _Val, _KeyOfValue, _Compare, _Alloc>::_M_construct_node(std::_Rb_tree<_Key, _Val, _KeyOfValue, _Compare, _Alloc>::_Link_type, _Args&& ...) [with _Args = {int&, int&, int&}; _Key = Job; _Val = Job; _KeyOfValue = std::_Identity<Job>; _Compare = std::less<Job>; _Alloc = std::allocator<Job>; std::_Rb_tree<_Key, _Val, _KeyOfValue, _Compare, _Alloc>::_Link_type = std::_Rb_tree_node<Job>*]'
/usr/include/c++/10/bits/stl_tree.h:635:21: required from 'std::_Rb_tree_node<_Val>* std::_Rb_tree<_Key, _Val, _KeyOfValue, _Compare, _Alloc>::_M_create_node(_Args&& ...) [with _Args = {int&, int&, int&}; _Key = Job; _Val = Job; _KeyOfValue = std::_Identity<Job>; _Compare = std::less<Job>; _Alloc = std::allocator<Job>; std::_Rb_tree<_Key, _Val, _KeyOfValue, _Compare, _Alloc>::_Link_type = std::_Rb_tree_node<Job>*]'
/usr/include/c++/10/bits/stl_tree.h:2440:33: required from 'std::_Rb_tree<_Key, _Val, _KeyOfValue, _Compare, _Alloc>::iterator std::_Rb_tree<_Key, _Val, _KeyOfValue, _Compare, _Alloc>::_M_emplace_equal(_Args&& ...) [with _Args = {int&, int&, int&}; _Key = Job; _Val = Job; _KeyOfValue = std::_Identity<Job>; _Compare = std::less<Job>; _Alloc = std::allocator<Job>; std::_Rb_tree<_Key, _Val, _KeyOfValue, _Compare, _Alloc>::iterator = std::_Rb_tree<Job, Job, std::_Identity<Job>, std::less<Job>, std::allocator<Job> >::iterator]'
/usr/include/c++/10/bits/stl_multiset.h:458:32: required from 'std::multiset<_Key, _Compare, _Alloc>::iterator std::multiset<_Key, _Compare, _Alloc>::emplace(_Args&& ...) [with _Args = {int&, int&, int&}; _Key = Job; _Compare = std::less<Job>; _Alloc = std::allocator<Job>; std::multiset<_Key, _Compare, _Alloc>::iterator = std::_Rb_tree<Job, Job, std::_Identity<Job>, std::less<Job>, std::allocator<Job> >::const_iterator]'
job.cpp:20:59: required from here
/usr/include/c++/10/ext/new_allocator.h:150:4: error: new initializer expression list treated as compound expression [-fpermissive]
150 | { ::new((void *)__p) _Up(std::forward<_Args>(__args)...); }
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/10/ext/new_allocator.h:150:4: error: no matching function for call to 'Job::Job(int&)'
job.cpp:7:8: note: candidate: 'Job::Job()'
7 | struct Job {
| ^~~
job.cpp:7:8: note: candidate expects 0 arguments, 1 provided
job.cpp:7:8: note: candidate: 'constexpr Job::Job(const Job&)'
job.cpp:7:8: note: no known conversion for argument 1 from 'int' to 'const Job&'
job.cpp:7:8: note: candidate: 'constexpr Job::Job(Job&&)'
job.cpp:7:8: note: no known conversion for argument 1 from 'int' to 'Job&&'