[Bug c++/88512] Too much STL in error output

2019-02-15 Thread redi at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=88512 --- Comment #10 from Jonathan Wakely --- I've created bug 89370 to request showing the type as std::string.

[Bug c++/88512] Too much STL in error output

2019-02-15 Thread redi at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=88512 --- Comment #9 from Jonathan Wakely --- It's easy for you to say that after looking at the reason it failed and knowing what the code is trying to do (obviously "insert" modifies the string, so it can't be const). But the compiler has to try

[Bug c++/88512] Too much STL in error output

2019-02-15 Thread jg at jguk dot org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=88512 --- Comment #12 from Jonny Grant --- (In reply to Jonathan Wakely from comment #9) > It's easy for you to say that after looking at the reason it failed and > knowing what the code is trying to do (obviously "insert" modifies the > string, so it

[Bug c++/88512] Too much STL in error output

2019-02-15 Thread redi at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=88512 --- Comment #11 from Jonathan Wakely --- There's also Bug 53281

[Bug c++/88512] Too much STL in error output

2019-02-15 Thread jg at jguk dot org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=88512 --- Comment #8 from Jonny Grant --- Another example. 9 line file. Gives 48 lines of STL warnings... G++ only needs to say something clear: "error: std::string 'str' is const, and as such insert() method cannot be called" // g++ -Wall -c -o

[Bug c++/88512] Too much STL in error output

2018-12-17 Thread redi at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=88512 --- Comment #7 from Jonathan Wakely --- I don't think this has anything to do with the std::lib anyway (and certainly not "the STL" which the example doesn't use at all). Most of the differences between GCC and Clang can be shown by an example

[Bug c++/88512] Too much STL in error output

2018-12-17 Thread redi at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=88512 --- Comment #6 from Jonathan Wakely --- (In reply to Jonny Grant from comment #3) > Hi Marc > > I agree to useful to have the option to keep on for regular code. > Perhaps a way just to turn off all expansive output for STL's std namespace?

[Bug c++/88512] Too much STL in error output

2018-12-16 Thread jg at jguk dot org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=88512 --- Comment #5 from Jonny Grant --- ICC 19.0.1 output (7): error: no instance of overloaded function "std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::erase [with _CharT=char, _Traits=std::char_traits, _Alloc=std::allocator]" matches the

[Bug c++/88512] Too much STL in error output

2018-12-15 Thread glisse at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=88512 --- Comment #4 from Marc Glisse --- (In reply to Jonny Grant from comment #3) > Updated output I had executed from STL with clear candidate suggestions: > > $ g++ -Wall -o stl_string stl_string.cpp > stl_string.cpp: In function ‘int main()’: >

[Bug c++/88512] Too much STL in error output

2018-12-15 Thread jg at jguk dot org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=88512 --- Comment #3 from Jonny Grant --- Hi Marc I agree to useful to have the option to keep on for regular code. Perhaps a way just to turn off all expansive output for STL's std namespace? The easiest would be to remove cxx11 namespace from the

[Bug c++/88512] Too much STL in error output

2018-12-15 Thread glisse at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=88512 --- Comment #2 from Marc Glisse --- As someone who regularly has to debug complicated template code, I think all the information printed by g++ here is useful. There may be more compact ways of giving the same information (use a shorthand for

[Bug c++/88512] Too much STL in error output

2018-12-15 Thread jg at jguk dot org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=88512 --- Comment #1 from Jonny Grant --- MSVC 19 isn't much better (7): error C2664: 'std::_String_iterator>> std::basic_string,std::allocator<_Ty>>::erase(const std::_String_const_iterator>>,const std::_String_const_iterator>>)': cannot convert