Message ID | 20140813113308.GB28291@redhat.com |
---|---|
State | New |
Headers | show |
Ping. On Wed, Aug 13, 2014 at 01:33:08PM +0200, Marek Polacek wrote: > I've put together a few lines describing what I (except > -fsanitize=alignment) implemented for GCC 5. > It's the file wwwdocs/htdocs/gcc-5/changes.html. > > Ok? > > --- changes.html.mp 2014-08-13 12:21:57.059610612 +0200 > +++ changes.html 2014-08-13 13:22:00.683597815 +0200 > @@ -16,11 +16,53 @@ > > <h2 id="general">General Optimizer Improvements</h2> > > + <ul> > + <li>UndefinedBehaviorSanitizer gained a few new sanitization options: > + <ul> > + <li><code>-fsanitize=float-divide-by-zero</code>: detect floating-point > + division by zero;</li> > + <li><code>-fsanitize=float-cast-overflow</code>: check that the result > + of floating-point type to integer conversion does not overflow;</li> > + <li><code>-fsanitize=bounds</code>: enable instrumentation of array bounds > + and detect out-of-bounds accesses;</li> > + <li><code>-fsanitize=alignment</code>: enable alignment checking, detect > + various misaligned objects.</li> > + </ul> > + </li> > + </ul> > + > <h2 id="languages">New Languages and Language specific improvements</h2> > > <!-- h3 id="ada">Ada</h3 --> > -<!-- h3 id="c-family">C family</h3 --> > -<!-- h3 id="c">C</h3--> > +<h3 id="c-family">C family</h3> > + > + <ul> > + <li>A new <code>-Wswitch-bool</code> option has been added for the C and C++ > + compilers, which warns whenever a <code>switch</code> statement has an > + index of boolean type.</li> > + <li>A new <code>-Wlogical-not-parentheses</code> option has been added for the > + C and C++ compilers, which warns about logical not used on the left hand > + side operand of a comparison.</li> > + <li>A new <code>-Wsizeof-array-argument</code> option has been added for the > + C and C++ compilers, which warns when the <code>sizeof</code> operator is > + applied to a parameter that is declared as an array in a function definition. > + </ul> > + > +<h3 id="c">C</h3> > + > + <ul> > + <li>A new <code>-Wc90-c99-compat</code> option has been added to warn > + about features not present in ISO C90, but present in ISO C99.</li> > + <li>It is possible to disable warnings about conversions between pointers > + that have incompatible types via a new warning option > + <code>-Wno-incompatible-pointer-types</code>; warnings about implicit > + incompatible integer to pointer and pointer to integer conversions via > + a new warning option <code>-Wno-int-conversion</code>; and warnings about > + qualifiers on pointers being discarded via a new warning option > + <code>-Wno-discarded-qualifiers</code>.</li> > + <li>The C front end now generates more precise caret diagnostics.</li> > + </ul> > + > <!-- h3 id="cxx">C++</h3--> > <!-- h4 id="libstdcxx">Runtime Library (libstdc++)</h4--> > <h3 id="fortran">Fortran</h3> > > Marek Marek
On Wed, 13 Aug 2014, Marek Polacek wrote: > I've put together a few lines describing what I (except > -fsanitize=alignment) implemented for GCC 5. > It's the file wwwdocs/htdocs/gcc-5/changes.html. Nice! > + <li><code>-fsanitize=float-cast-overflow</code>: check that the result > + of floating-point type to integer conversion does not overflow;</li> "conversions" (plural)? > + <li>A new <code>-Wswitch-bool</code> option has been added for the C and C++ > + compilers, which warns whenever a <code>switch</code> statement has an > + index of boolean type.</li> Here, and in the other cases, "A new option <code>..." might be less ambigous -- someone might read this as an option for this command-line option. This is just a suggestion, feel free to ignore. I would say "command-line option" instead of just option, though. > + <li>A new <code>-Wlogical-not-parentheses</code> option has been added for the > + C and C++ compilers, which warns about logical not used on the left hand > + side operand of a comparison.</li> "logical not" in quotes, perhaps? Otherwise this may be a bit hard to parse. > + <li>A new <code>-Wsizeof-array-argument</code> option has been added for the > + C and C++ compilers, which warns when the <code>sizeof</code> operator is > + applied to a parameter that is declared as an array in a function definition. "has been" instead of "is declard"? > + <li>It is possible to disable warnings about conversions between pointers > + that have incompatible types via a new warning option > + <code>-Wno-incompatible-pointer-types</code>; warnings about implicit > + incompatible integer to pointer and pointer to integer conversions via > + a new warning option <code>-Wno-int-conversion</code>; and warnings about > + qualifiers on pointers being discarded via a new warning option Should we write "pointer-to-integer" and the like, here and in other parts of the patch? Probably best a question for Joseph (and if he has approved code/document patches where that was not the case, than the answer pretty likely is now. ;-) Gerald
--- changes.html.mp 2014-08-13 12:21:57.059610612 +0200 +++ changes.html 2014-08-13 13:22:00.683597815 +0200 @@ -16,11 +16,53 @@ <h2 id="general">General Optimizer Improvements</h2> + <ul> + <li>UndefinedBehaviorSanitizer gained a few new sanitization options: + <ul> + <li><code>-fsanitize=float-divide-by-zero</code>: detect floating-point + division by zero;</li> + <li><code>-fsanitize=float-cast-overflow</code>: check that the result + of floating-point type to integer conversion does not overflow;</li> + <li><code>-fsanitize=bounds</code>: enable instrumentation of array bounds + and detect out-of-bounds accesses;</li> + <li><code>-fsanitize=alignment</code>: enable alignment checking, detect + various misaligned objects.</li> + </ul> + </li> + </ul> + <h2 id="languages">New Languages and Language specific improvements</h2> <!-- h3 id="ada">Ada</h3 --> -<!-- h3 id="c-family">C family</h3 --> -<!-- h3 id="c">C</h3--> +<h3 id="c-family">C family</h3> + + <ul> + <li>A new <code>-Wswitch-bool</code> option has been added for the C and C++ + compilers, which warns whenever a <code>switch</code> statement has an + index of boolean type.</li> + <li>A new <code>-Wlogical-not-parentheses</code> option has been added for the + C and C++ compilers, which warns about logical not used on the left hand + side operand of a comparison.</li> + <li>A new <code>-Wsizeof-array-argument</code> option has been added for the + C and C++ compilers, which warns when the <code>sizeof</code> operator is + applied to a parameter that is declared as an array in a function definition. + </ul> + +<h3 id="c">C</h3> + + <ul> + <li>A new <code>-Wc90-c99-compat</code> option has been added to warn + about features not present in ISO C90, but present in ISO C99.</li> + <li>It is possible to disable warnings about conversions between pointers + that have incompatible types via a new warning option + <code>-Wno-incompatible-pointer-types</code>; warnings about implicit + incompatible integer to pointer and pointer to integer conversions via + a new warning option <code>-Wno-int-conversion</code>; and warnings about + qualifiers on pointers being discarded via a new warning option + <code>-Wno-discarded-qualifiers</code>.</li> + <li>The C front end now generates more precise caret diagnostics.</li> + </ul> + <!-- h3 id="cxx">C++</h3--> <!-- h4 id="libstdcxx">Runtime Library (libstdc++)</h4--> <h3 id="fortran">Fortran</h3>