News for hackers. Stuff that matters.
Re:C++ 20: The Core Language by gumby on Tuesday November 05, 2019 @01:20PM (#21455082)
> On the other hand, there aren't really any changes in 14 and 17 that break compatibility with code written in 11, at least that I'm aware of.

auto_ptr has thankfully be removed, but if you have legacy code that uses it it won't compile under C++17. Of course if you have code that uses auto_ptr you should fix it, but realistically nobody has the time for that.

Re:C++ 20: The Core Language by MauranKilom on Tuesday November 05, 2019 @01:29PM (#21455175)
Depends on how much it was used. But I was part of the effort to convert to C++17 for our (substantial) C++ code base of ~30 years and it was not painful at all.
Re:C++ 20: The Core Language by twoodfin on Tuesday November 05, 2019 @02:20PM (#21455681)
I also ran up against the deprecation of std::mem_fun and std::mem_fun_ref in a recent migration. Easy enough to replace with lambda expressions, but one more hurdle to running C++17 code.
Re:C++ 20: The Core Language by jcelerier on Tuesday November 05, 2019 @03:25PM (#21456279)
all compilers have ways to reinstate them to make porting easier, e.g. /D_HAS_AUTO_PTR_ETC=1 on msvc, -D_LIBCPP_ENABLE_CXX17_REMOVED_FEATURES=1 on clang...
Re:C++ 20: The Core Language by ludamad on Tuesday November 05, 2019 @01:27PM (#21455159)
I mean, if tricky usage of auto_ptr is stopping you, you could probably use a drop-in replacement. But the 'and this adds to the sprint tasks how?' question still isn't answered in a good way
Re:C++ 20: The Core Language by TillE on Tuesday November 05, 2019 @02:23PM (#21455715)
You could probably just find/replace unique_ptr. I'm pretty sure that's what I did a million years ago when auto_ptr was deprecated.

C++17 does break some code by removing a few things, but they're pretty trivial and nothing sneaky.

Re:C++ 20: The Core Language by tjalfi on Tuesday November 05, 2019 @11:05PM (#21459638)
clang-tidy has a command to replace auto_ptr with unique_ptr[0]. I haven't used it in anger, though.

[0] https://clang.llvm.org/extra/clang-tidy/checks/modernize-rep...