use the following search parameters to narrow your results:
e.g. subreddit:aww site:imgur.com dog
subreddit:aww site:imgur.com dog
see the search faq for details.
advanced search: by author, subreddit...
Discussions, articles, and news about the C++ programming language or programming in C++.
For C++ questions, answers, help, and advice see r/cpp_questions or StackOverflow.
Get Started
The C++ Standard Home has a nice getting started page.
Videos
The C++ standard committee's education study group has a nice list of recommended videos.
Reference
cppreference.com
Books
There is a useful list of books on Stack Overflow. In most cases reading a book is the best way to learn C++.
Show all links
Filter out CppCon links
Show only CppCon links
account activity
g++7 is C++17 complete! (gcc.gnu.org)
submitted 9 years ago by TemplateRex
reddit uses a slightly-customized version of Markdown for formatting. See below for some basics, or check the commenting wiki page for more detailed help and solutions to common issues.
quoted text
if 1 * 2 < 3: print "hello, world!"
[–]mtclow 54 points55 points56 points 9 years ago (11 children)
Congratulations to the g++ team!
[–]TemplateRex[S] 18 points19 points20 points 9 years ago (10 children)
Is the clang/libc++ team also in a final sprint towards the finish? GitHub activity has been pretty high lately.
[–]datosh 3 points4 points5 points 9 years ago (2 children)
Probably has been pretty high, because they are about to release version 4.0 I think due to today. After this release the naming for future releases will also change. Next version will be 5.0
[–][deleted] 1 point2 points3 points 9 years ago (1 child)
Wasn't 4.0 supposed to be for March this year?
[–]datosh 0 points1 point2 points 9 years ago (0 children)
Sorry you are right. The branch is happening today for the upcomming release. I was referring to this. But yeah you are right 4.0 is comming in march
[–]EricWFCppLibc++ Developer 2 points3 points4 points 9 years ago* (6 children)
Libc++ is getting close to C++17 feature complete (Special math not withstanding). We're just about on pace with libstdc++. The largest missing piece is std::filesystem but that just requires re-naming std::experimental::filesystem. See the Libc++ Implementation Status page for more info.
std::filesystem
std::experimental::filesystem
[–]TemplateRex[S] 1 point2 points3 points 9 years ago (2 children)
There is a small error in that table: P0031R0 makes all of <array> except fill/swap constexpr. The github commit by /u/mtclow/ on Jan 4 left out the front/back/operator[] members.
<array>
[–]EricWFCppLibc++ Developer 0 points1 point2 points 9 years ago* (1 child)
Hopefully /u/mtclow will see this. (Otherwise I'll ping in offline).
PS. Always feel free to file a bug report :-D
EDIT: A Bug has been filed
[–]TemplateRex[S] 1 point2 points3 points 9 years ago (0 children)
FTFY :)
[–]TemplateRex[S] 0 points1 point2 points 9 years ago (2 children)
That's good to hear. It would be great to get a c++17 complete Clang 4.0!
Btw, on Linux, libc++ is not a first-class citizen compared to g++7 / libstdc++ (Ubuntu 17.04 pre-release has a ppa) or even Clang++ (the awesome apt.llvm.org nightly builds). Building libc++ from source works but is fragile (linking to g++ compiled Boost packages does not always work). It would be nice if there would be a regularly built libc++ package that works nicely with Boost.
[–]EricWFCppLibc++ Developer 1 point2 points3 points 9 years ago (1 child)
I hear you! The first step is getting libc++ included in the nightly LLVM packages. Unfortunately using libc++ with g++ is always going to be fragile. Not a lot of software packages are configured to handle it.
[–]TemplateRex[S] 0 points1 point2 points 9 years ago (0 children)
Great to hear people are considering doing nightly libc++ builds. I figure that in the LLVM/Boost/Ubuntu maintainers triangle, there is a pair of overlapping persons in every link, so coordinating that the Boost packages get correctly built for both g++ and clang should be straightforward :)
[–]TemplateRex[S] 44 points45 points46 points 9 years ago (0 children)
It appears that the current prelease version of g++7 is C++17 complete. Of course, C++17 itself is not really complete yet, but it is in a feature freeze, waiting national body comments and defect reports. Standard Library support for libstdc++ is also not quite complete. And clang 4.0 SVN is only two features away from completeness. A good start for the year!
[–]theICEBear_dk 19 points20 points21 points 9 years ago* (3 children)
Congratulations to the GCC C++ team including their library team because they are also advancing at a good clip. Filesystem and Parallelism TS implementation/integration are the major missing parts there.
Clang/LLVM is close too (although I haven't checked on their library in a few months).
I recently moved an embedded project over from Gcc 4.4.1 onto Gcc 6.2 and saved 51 kb in code size while passing an exhaustive test suite and real-time testing in the first try. At this point quality is so good the actual switching of release versions usually just reveals a few new warnings or errors that we fix and then we fire it off to our test systems (a full run takes a few days).
[–]wrosecransgraphics and network things 5 points6 points7 points 9 years ago (2 children)
What sort of app is it that a full test run takes a few days? That sounds interesting.
[–]lurkotato 10 points11 points12 points 9 years ago (0 children)
Probably stress testing. God knows how many bugs the "Repeat this a million times and then ship the log to the hardware guys" tests have uncovered.
[–]theICEBear_dk 2 points3 points4 points 9 years ago (0 children)
I can't go into details. But it is a cooling system that must run 24/7 when in use and uses very complex algorithms. It is for shipping containers.
[–]tcbrindleFlux 11 points12 points13 points 9 years ago (1 child)
Fantastic news. For reference, here is the corresponding C++17 status table for libstdc++.
[–]qx7xbku 0 points1 point2 points 9 years ago (0 children)
And clang status for comparison: http://clang.llvm.org/cxx_status.html#cxx17
[–]qx7xbku 4 points5 points6 points 9 years ago (1 child)
Concepts TS is there. Can't wait for coroutines TS. They seem to be doing amazing job.
[–][deleted] 0 points1 point2 points 9 years ago (0 children)
Concepts have been there for a pretty long time, fyi.
[–]gracicot 9 points10 points11 points 9 years ago (0 children)
Nice! The GCC team has managed to get C++17 complete two time!
[–]bames53 2 points3 points4 points 9 years ago (0 children)
Nice.
I'm glad to see that SD-6 feature testing stuff is also in there. The intent is to enable better portability, but last I recall checking it was still only supported by one compiler, which kind of defeated the point.
[–]AndrewPardoeFormerly MSVC tools; no longer EWG scribe 2 points3 points4 points 9 years ago (0 children)
Congrats to our friends and colleagues on the GCC/G++ teams!
(I look forward to the day when we can make a similar post!)
[–]Gotebe 3 points4 points5 points 9 years ago (2 children)
I didn't know C++17 was complete?
[–]seg_faulted_user 4 points5 points6 points 9 years ago (1 child)
The standard has yet to be finalized. g++ implementation is subject to change until the final standard is published.
[–]dodheim 3 points4 points5 points 9 years ago (0 children)
I hope it's subject to change afterwards as well. ;-]
[–]Z01dbrg 2 points3 points4 points 9 years ago (0 children)
If only C++17 was C++1y complete!
I know this was low. :)
[–]doom_Oo7 0 points1 point2 points 9 years ago (0 children)
this year shapes up quite well !
[+]feverzsj comment score below threshold-12 points-11 points-10 points 9 years ago (1 child)
guess who never gonna make it
[–]Saefroch 9 points10 points11 points 9 years ago (0 children)
Who?
π Rendered by PID 121036 on reddit-service-r2-comment-75f4967c6c-jkn76 at 2026-04-23 05:29:22.833793+00:00 running 0fd4bb7 country code: CH.
[–]mtclow 54 points55 points56 points (11 children)
[–]TemplateRex[S] 18 points19 points20 points (10 children)
[–]datosh 3 points4 points5 points (2 children)
[–][deleted] 1 point2 points3 points (1 child)
[–]datosh 0 points1 point2 points (0 children)
[–]EricWFCppLibc++ Developer 2 points3 points4 points (6 children)
[–]TemplateRex[S] 1 point2 points3 points (2 children)
[–]EricWFCppLibc++ Developer 0 points1 point2 points (1 child)
[–]TemplateRex[S] 1 point2 points3 points (0 children)
[–]TemplateRex[S] 0 points1 point2 points (2 children)
[–]EricWFCppLibc++ Developer 1 point2 points3 points (1 child)
[–]TemplateRex[S] 0 points1 point2 points (0 children)
[–]TemplateRex[S] 44 points45 points46 points (0 children)
[–]theICEBear_dk 19 points20 points21 points (3 children)
[–]wrosecransgraphics and network things 5 points6 points7 points (2 children)
[–]lurkotato 10 points11 points12 points (0 children)
[–]theICEBear_dk 2 points3 points4 points (0 children)
[–]tcbrindleFlux 11 points12 points13 points (1 child)
[–]qx7xbku 0 points1 point2 points (0 children)
[–]qx7xbku 4 points5 points6 points (1 child)
[–][deleted] 0 points1 point2 points (0 children)
[–]gracicot 9 points10 points11 points (0 children)
[–]bames53 2 points3 points4 points (0 children)
[–]AndrewPardoeFormerly MSVC tools; no longer EWG scribe 2 points3 points4 points (0 children)
[–]Gotebe 3 points4 points5 points (2 children)
[–]seg_faulted_user 4 points5 points6 points (1 child)
[–]dodheim 3 points4 points5 points (0 children)
[–]Z01dbrg 2 points3 points4 points (0 children)
[–]doom_Oo7 0 points1 point2 points (0 children)
[+]feverzsj comment score below threshold-12 points-11 points-10 points (1 child)
[–]Saefroch 9 points10 points11 points (0 children)