As an addition to what has been mentioned @35:40 it is also correct to move the value on return if you take the same value by rvalue reference and modify it within a function, as mentioned in another CppCon talk.
Thanks to this channel for sharing such an awesome presentations. Very much appreciated.
if constexpr is pure happiness.
Great talk, I love it. This is why I do not use C++17 yet. Second reason is lack of standard compiler support in CentOS 6
37:40 IMO it is a flaw right? it stops NRVO as he explained before and the simple way to fix it (in the language) is to replace instances of usage of the binding variable names with the binding value. like instead of `auto& value = e.second; f(value); return value;` just do `f(e.second); return e.second;`
gotta watch this one
"By your leave, Mr. Turner"🏴☠
Perspective. I understand more of The game of thrones than of this talk. Il still win.
@ 41:02 "It is doing exactly what I needed to do and is correct". Sorry, no, it's not correct. You have no unexpanded parameter pack there. "node" parameter should have been "const AST_Node_Impl<Tracer<T>>*... node" for your fold expression to compile.
15:48 How about noexcept_cast ? :D
I understand every single slide here, but I am not a C++ Jedi yet
thanks)
I don't understand why the code at 47:51 should compile. Afaik std::string_view is not convertible to std::string, therefore constructing m_string from sv is not possible. So what gives?
I honestly don't get why they added if-init. It looks like a mess and we already have braces { } to create an inner scope.
Drinking game! Have a shot every time he says "thing"
namespace ParentNamespace:: {} ? @ 9:00
@jankodedic3130