Modern C++ is such a mess that it requires 'notes' next to 'warnings' and 'errors' lol note: parameter passing for argument of type ‘tint::Number<tint::detail::NumberKindF16>’ when C++17 is enabled changed to match C++14 in GCC 10.1

Jan 20, 2025 · 3:09 PM UTC

6
2
78
Replying to @FlohOfWoe
Only up until C++20 you couldn't have designated initializers for structs. Something that was already present in C99. 20+ years. Innovation.
1
2
And even this was botched the C++ committee, even though Clang already supported full C99 designated init in C++ for many years :/
Replying to @FlohOfWoe
??? Why is it C++ standard's fault when _one_ compiler vendor decides to break ABI and solve it with a warning (which I guess can be turned into an error)?
3
Replying to @FlohOfWoe
That’s more a downside of changing versions within your application than a problem with the language. It applies to other languages too.
Replying to @FlohOfWoe
I had to do some ndk stuff and the notes thing confused me to no end, like am I supposed to follow them or can I just ignore them? Is this some code cleanup thing or something that is important during compile or runtime..
Replying to @FlohOfWoe
Plpgsql has hints and contexts and noone's complaining. Rust has notes and helps and everybody loves it.
This tweet is unavailable
Replying to @FlohOfWoe
lol c++ error trace is so horrible that I'm starting to think about not using function overloading anymore (the only reason I'm not doing C)... It's horribly formatted when MSVC finds at least 4 candidate functions...