It's always been ill-formed to say "return;" in a non-void function, the change in GCC 8 is when control flows of the end of a function. This corrects the release notes.
Committed to CVS.
Index: htdocs/gcc-8/changes.html =================================================================== RCS file: /cvs/gcc/wwwdocs/htdocs/gcc-8/changes.html,v retrieving revision 1.69 diff -u -r1.69 changes.html --- htdocs/gcc-8/changes.html 24 Apr 2018 20:36:28 -0000 1.69 +++ htdocs/gcc-8/changes.html 25 Apr 2018 11:40:26 -0000 @@ -716,9 +716,10 @@ </pre> </li> - <li>A return statement without an operand in a non-void function + <li>Flowing off the end of a non-void function is considered unreachable and may be subject to optimization - on that basis.</li> + on that basis. As a result of this change, <code>-Wreturn-type</code> + warnings are enabled by default for C++.</li> </ul> <h4 id="libstdcxx">Runtime Library (libstdc++)</h4>