[RFC] c-family: -Wleading-whitespace= argument spelling

Message ID ZxuZFAPyG77FGdys@tucnak
State New
Headers
Series [RFC] c-family: -Wleading-whitespace= argument spelling |

Checks

Context Check Description
linaro-tcwg-bot/tcwg_gcc_build--master-arm fail Patch failed to apply
linaro-tcwg-bot/tcwg_gcc_build--master-aarch64 fail Patch failed to apply

Commit Message

Jakub Jelinek Oct. 25, 2024, 1:11 p.m. UTC
  Hi!

On Thu, Oct 24, 2024 at 03:33:25PM -0400, Eric Gallager wrote:
> On Thu, Oct 24, 2024 at 4:17 AM Jakub Jelinek <jakub@redhat.com> wrote:
> > I've tried to build stage3 with
> > -Wleading-whitespace=blanks -Wtrailing-whitespace=blank -Wno-error=leading-whitespace=blanks -Wno-error=trailing-whitespace=blank
>
> So wait, it's "blanks" (plural) when it's leading, but "blank"
> (singular) when it's trailing? That inconsistency bothers me...

I've mentioned it already in
https://gcc.gnu.org/pipermail/gcc-patches/2024-October/664664.html
Citing that here:
    Not sure about the kinds for the option, given -Wleading-whitespace=
    uses plural and this option singular and -Wleading-whitespace= spaces
    means literally just ' ' characters, while space in
    -Wtrailing-whitespace= was ' ', '\t', '\v' and '\f'; so category;
    perhaps just use any and blanks?
Other preferences?

Here is a patch to do the blank->blanks and space->any changes.

2024-10-25  Jakub Jelinek  <jakub@redhat.com>

gcc/
	* doc/invoke.texi (Wtrailing-whitespace=): Change
	blank argument to blanks and space argument to any.
gcc/c-family/
	* c.opt (warn_trailing_whitespace_kind): Change blank
	to blanks and space to any.
gcc/testsuite/
	* c-c++-common/cpp/Wtrailing-whitespace-2.c: Use
	-Wtrailing-whitespace=blanks rather than -Wtrailing-whitespace=blank.
	* c-c++-common/cpp/Wtrailing-whitespace-3.c: Use
	-Wtrailing-whitespace=any rather than -Wtrailing-whitespace=space.
	* c-c++-common/cpp/Wtrailing-whitespace-7.c: Use
	-Wtrailing-whitespace=blanks rather than -Wtrailing-whitespace=blank.
	* c-c++-common/cpp/Wtrailing-whitespace-8.c: Use
	-Wtrailing-whitespace=any rather than -Wtrailing-whitespace=space.



	Jakub
  

Comments

Joseph Myers Oct. 25, 2024, 7:42 p.m. UTC | #1
On Fri, 25 Oct 2024, Jakub Jelinek wrote:

> Hi!
> 
> On Thu, Oct 24, 2024 at 03:33:25PM -0400, Eric Gallager wrote:
> > On Thu, Oct 24, 2024 at 4:17 AM Jakub Jelinek <jakub@redhat.com> wrote:
> > > I've tried to build stage3 with
> > > -Wleading-whitespace=blanks -Wtrailing-whitespace=blank -Wno-error=leading-whitespace=blanks -Wno-error=trailing-whitespace=blank
> >
> > So wait, it's "blanks" (plural) when it's leading, but "blank"
> > (singular) when it's trailing? That inconsistency bothers me...
> 
> I've mentioned it already in
> https://gcc.gnu.org/pipermail/gcc-patches/2024-October/664664.html
> Citing that here:
>     Not sure about the kinds for the option, given -Wleading-whitespace=
>     uses plural and this option singular and -Wleading-whitespace= spaces
>     means literally just ' ' characters, while space in
>     -Wtrailing-whitespace= was ' ', '\t', '\v' and '\f'; so category;
>     perhaps just use any and blanks?
> Other preferences?
> 
> Here is a patch to do the blank->blanks and space->any changes.

OK.
  

Patch

--- gcc/c-family/c.opt.jj	2024-10-23 09:54:23.806659741 +0200
+++ gcc/c-family/c.opt	2024-10-25 15:01:55.739006953 +0200
@@ -1492,18 +1492,18 @@  EnumValue
 Enum(warn_trailing_whitespace_kind) String(none) Value(0)
 
 EnumValue
-Enum(warn_trailing_whitespace_kind) String(blank) Value(1)
+Enum(warn_trailing_whitespace_kind) String(blanks) Value(1)
 
 EnumValue
-Enum(warn_trailing_whitespace_kind) String(space) Value(2)
+Enum(warn_trailing_whitespace_kind) String(any) Value(2)
 
 Wtrailing-whitespace=
 C ObjC C++ ObjC++ CPP(cpp_warn_trailing_whitespace) CppReason(CPP_W_TRAILING_WHITESPACE) Enum(warn_trailing_whitespace_kind) Joined RejectNegative Var(warn_trailing_whitespace) Init(0) Warning
 Warn about trailing whitespace on lines except when in raw string literals.
 
 Wtrailing-whitespace
-C ObjC C++ ObjC++ Alias(Wtrailing-whitespace=,blank,none) Warning
-Warn about trailing whitespace on lines except when in raw string literals.   Equivalent to Wtrailing-whitespace=blank when enabled or Wtrailing-whitespace=none when disabled.
+C ObjC C++ ObjC++ Alias(Wtrailing-whitespace=,blanks,none) Warning
+Warn about trailing whitespace on lines except when in raw string literals.   Equivalent to Wtrailing-whitespace=blanks when enabled or Wtrailing-whitespace=none when disabled.
 
 Wtrigraphs
 C ObjC C++ ObjC++ CPP(warn_trigraphs) CppReason(CPP_W_TRIGRAPHS) Var(cpp_warn_trigraphs) Init(2) Warning LangEnabledBy(C ObjC C++ ObjC++,Wall)
--- gcc/doc/invoke.texi.jj	2024-10-23 09:54:23.799659841 +0200
+++ gcc/doc/invoke.texi	2024-10-25 15:02:58.321121856 +0200
@@ -8784,8 +8784,8 @@  This warning is enabled by @option{-Wall
 Warn about trailing whitespace at the end of lines, including inside of
 comments, but excluding trailing whitespace in raw string literals.
 @code{-Wtrailing-whitespace} is equivalent to
-@code{-Wtrailing-whitespace=blank} and warns just about trailing space and
-horizontal tab characters.  @code{-Wtrailing-whitespace=space} warns about
+@code{-Wtrailing-whitespace=blanks} and warns just about trailing space and
+horizontal tab characters.  @code{-Wtrailing-whitespace=any} warns about
 those or trailing form feed or vertical tab characters.
 @code{-Wno-trailing-whitespace} or @code{-Wtrailing-whitespace=none}
 disables the warning, which is the default.
--- gcc/testsuite/c-c++-common/cpp/Wtrailing-whitespace-2.c.jj	2024-10-15 07:53:35.358935155 +0200
+++ gcc/testsuite/c-c++-common/cpp/Wtrailing-whitespace-2.c	2024-10-25 15:03:37.606566245 +0200
@@ -1,5 +1,5 @@ 
 /* { dg-do compile { target { c || c++11 } } } */
-/* { dg-options "-Wtrailing-whitespace=blank" } */
+/* { dg-options "-Wtrailing-whitespace=blanks" } */
 
 int i;   
 /* { dg-warning "trailing whitespace" "" { target *-*-* } .-1 } */
--- gcc/testsuite/c-c++-common/cpp/Wtrailing-whitespace-3.c.jj	2024-10-15 07:53:35.358935155 +0200
+++ gcc/testsuite/c-c++-common/cpp/Wtrailing-whitespace-3.c	2024-10-25 15:05:06.787304962 +0200
@@ -1,5 +1,5 @@ 
 /* { dg-do compile { target { c || c++11 } } } */
-/* { dg-options "-Wtrailing-whitespace=space" } */
+/* { dg-options "-Wtrailing-whitespace=any" } */
 
 int i;   
 /* { dg-warning "trailing whitespace" "" { target *-*-* } .-1 } */
--- gcc/testsuite/c-c++-common/cpp/Wtrailing-whitespace-7.c.jj	2024-10-15 07:53:35.359935141 +0200
+++ gcc/testsuite/c-c++-common/cpp/Wtrailing-whitespace-7.c	2024-10-25 15:03:31.477652927 +0200
@@ -1,6 +1,6 @@ 
 /* This test uses intentionally DOS line endings (CR+LF).  */
 /* { dg-do compile { target { c || c++11 } } } */
-/* { dg-options "-Wtrailing-whitespace=blank" } */
+/* { dg-options "-Wtrailing-whitespace=blanks" } */
 
 int i;   
 /* { dg-warning "trailing whitespace" "" { target *-*-* } .-1 } */
--- gcc/testsuite/c-c++-common/cpp/Wtrailing-whitespace-8.c.jj	2024-10-15 07:53:35.359935141 +0200
+++ gcc/testsuite/c-c++-common/cpp/Wtrailing-whitespace-8.c	2024-10-25 15:05:00.563392987 +0200
@@ -1,6 +1,6 @@ 
 /* This test uses intentionally DOS line endings (CR+LF).  */
 /* { dg-do compile { target { c || c++11 } } } */
-/* { dg-options "-Wtrailing-whitespace=space" } */
+/* { dg-options "-Wtrailing-whitespace=any" } */
 
 int i;   
 /* { dg-warning "trailing whitespace" "" { target *-*-* } .-1 } */