| /* { dg-do compile } */ |
| /* { dg-require-profiling "-fprofile-generate" } */ |
| /* { dg-options "-fprofile-generate" } */ |
| |
| template<class _CharT> struct char_traits; |
| template<typename _OI> |
| _OI __copy_move_a2(_OI __result); |
| template<typename _OI> inline _OI |
| copy(_OI __result) |
| { |
| return __copy_move_a2 (__result); |
| } |
| template<typename _CharT, typename _Traits> |
| class basic_ostream { }; |
| template<typename _Tp, typename _CharT = char, typename _Traits = char_traits<_CharT> > |
| class ostream_iterator { |
| typedef basic_ostream<_CharT, _Traits> ostream_type; |
| ostream_type* _M_stream; |
| const _CharT* _M_string; |
| public: |
| ostream_iterator(ostream_type& __s, const _CharT* __c) |
| : _M_stream(&__s), _M_string(__c) { } |
| ostream_iterator(const ostream_iterator& __obj) |
| : _M_stream(__obj._M_stream), _M_string(__obj._M_string) { } |
| }; |
| int f(void) |
| { |
| basic_ostream<char, char_traits<char> > os; |
| copy(ostream_iterator<const int>(os, ",")); |
| return 0; |
| } |