prog.cpp:19:50: error: ‘bidirectional_iterator_tag’ does not name a type
const bidirectional_iterator_tag &,
^
prog.cpp:19:77: error: ISO C++ forbids declaration of ‘parameter’ with no type [-fpermissive]
const bidirectional_iterator_tag &,
^
prog.cpp:30:49: error: ‘random_access_iterator_tag’ does not name a type
const random_access_iterator_tag &,
^
prog.cpp:30:76: error: ISO C++ forbids declaration of ‘parameter’ with no type [-fpermissive]
const random_access_iterator_tag &,
^
prog.cpp:27:27: error: redefinition of ‘template<class _RandomAccessIter, class _BidirectionalIter, class _Distance> _BidirectionalIter __copy_backward(_RandomAccessIter, _RandomAccessIter, _BidirectionalIter, const int&, _Distance*)’
inline _BidirectionalIter __copy_backward(_RandomAccessIter __first,
^
prog.cpp:16:28: error: ‘template<class _BidirectionalIter1, class _BidirectionalIter2, class _Distance> _BidirectionalIter2 __copy_backward(_BidirectionalIter1, _BidirectionalIter1, _BidirectionalIter2, const int&, _Distance*)’ previously declared here
inline _BidirectionalIter2 __copy_backward(_BidirectionalIter1 __first,
^