LINUX.ORG.RU

форматированный вывод сообщений об ошибках gcc

 , ,


0

4

Перед тем, как писать свой велосипед спрошу: Допустим gcc выдает мне следующее сообщение

/usr/lib/gcc/i686-pc-cygwin/4.9.3/include/c++/bits/predefined_ops.h: In instantiation of «bool __gnu_cxx::__ops::_Iter_equals_val<_Value>::operator()(_Iterator) [with _Iterator = __gnu_cxx::__normal_iterator<std::pair<std::pair<char, std::basic_string<char> >, std::pair<long long int, long long int> >*, std::vector<std::pair<std::pair<char, std::basic_string<char> >, std::pair<long long int, long long int> > > >; _Value = const std::pair<std::pair<char, std::basic_string<char> >, std::pair<long long int, int> >]»:
/usr/lib/gcc/i686-pc-cygwin/4.9.3/include/c++/bits/stl_algo.h:866:28:   required from «_ForwardIterator std::__remove_if(_ForwardIterator, _ForwardIterator, _Predicate) [with _ForwardIterator = __gnu_cxx::__normal_iterator<std::pair<std::pair<char, std::basic_string<char> >, std::pair<long long int, long long int> >*, std::vector<std::pair<std::pair<char, std::basic_string<char> >, std::pair<long long int, long long int> > > >; _Predicate = __gnu_cxx::__ops::_Iter_equals_val<const std::pair<std::pair<char, std::basic_string<char> >, std::pair<long long int, int> > >]»
а я хочу его видеть в таком формате:
/usr/lib/gcc/i686-pc-cygwin/4.9.3/include/c++/bits/predefined_ops.h: In instantiation of «
	bool __gnu_cxx::__ops::_Iter_equals_val<_Value>::operator()(_Iterator) [
		with _Iterator = __gnu_cxx::__normal_iterator<
			std::pair<
				std::pair<char, std::basic_string<char> >, 
				std::pair<long long int, long long int> >*, 
				std::vector<
					std::pair<
						std::pair<char, std::basic_string<char> >, 
						std::pair<long long int, long long int> 
					> 
				> 
			>; 
		_Value = const std::pair<std::pair<char, std::basic_string<char> >, std::pair<long long int, int> >
	]
»:
/usr/lib/gcc/i686-pc-cygwin/4.9.3/include/c++/bits/stl_algo.h:866:28:   required from «
	_ForwardIterator std::__remove_if(_ForwardIterator, _ForwardIterator, _Predicate) [
		with _ForwardIterator = __gnu_cxx::__normal_iterator<
			std::pair<std::pair<char, std::basic_string<char> >, std::pair<long long int, long long int> >*,
			std::vector<std::pair<std::pair<char, std::basic_string<char> >, std::pair<long long int, long long int> > > 
		>; 
		_Predicate = __gnu_cxx::__ops::_Iter_equals_val<
			const std::pair<std::pair<char, std::basic_string<char> >, std::pair<long long int, int> > 
		>
	]
»
Существуют ли утилиты, делающие что-то подобное?



Последнее исправление: FeelUs (всего исправлений: 1)

gSTLFilt где-то близко, хотя чтобы именно так разбивать я опций не вижу. Но задав маленькую ширину получил:

src/Invocation.cpp: In member function ‘vector<
        pair<
            basic_string<char>, basic_string<
                char>> > Invocation::getConfs()
    const’:
src/Invocation.cpp:209:12: error: could not
    convert ‘1’ from ‘int’ to ‘vector<
        pair<
            basic_string<char>, basic_string<
                char>>>’
return 1;
Т.е. может быть проще его подправить, чем с нуля писать.

xaizek ★★★★★
()
Ответ на: комментарий от xaizek

Лол, главное хейтерам этот тул не показывать, error decriptor, ха :)

pon4ik ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.