I noticed an update in Fedora today. An updated gcc compiler and associated build infrastructure. As a result, I decided to query the man page for gcc. I was looking at optimization flags when I noticed the C++17 option for the std parameter. I updated the build script for the rss program to apply optimization with O3. After testing that, I switched from C++14 to C++17 as the C++ standard used with the g++ compiler. The result was dramatic.
Of course the size of the program executable will shrink going from debug to full optimization in most cases. Using the C++14 std option, the executable size went from 1.2MB to 171KB with O3. With the switch to C++17, the size went down to 156KB. Impressive.
Even more impressive is the speed. I have not measured the speed and can only describe perceived response time. The command-line version of the rss program would take about a second or two to run to completion parsing 6 feeds. The C++17 standard option in gcc easily does the same task so fast it is perfectly instantaneous.
The performance improvement is even more noticeable with the interactive version of the rss program. Each button click, screen refresh is fast and less than half a second. Instantaneous even with file read, offline file parsing, and user interface composition. C++17 is definitely here and will decidedly make a huge difference in software programs built on C++ going forward.