Fix up duplicated words mostly in comments, part 1

Message ID Zgu39joE9fuaYznv@tucnak
State New
Headers
Series Fix up duplicated words mostly in comments, part 1 |

Checks

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

Commit Message

Jakub Jelinek April 2, 2024, 7:47 a.m. UTC
  Hi!

Like in r12-7519-g027e30414492d50feb2854aff38227b14300dc4b, I've done
git grep -v 'long long\|optab optab\|template template\|double double' | grep ' \([a-zA-Z]\+\) \1 '

This is just part of the changes, mostly for non-gcc directories.
I'll try to get to the rest soon.  Obviously, the above command also
finds cases which are correct as is and shouldn't be changed, so one
needs to manually inspect everything.

I'd hope most of it is pretty obvious, but the config/ and libstdc++-v3/
hunks include a tweak in a license wording, though other copies of the
similar license have the wording right.

Bootstrapped/regtested on x86_64-linux and i686-linux, ok for trunk?

2024-04-02  Jakub Jelinek  <jakub@redhat.com>

	* Makefile.tpl: Fix duplicated words; returns returns ->
	returns.
config/
	* lcmessage.m4: Fix duplicated words; can can -> can,
	package package -> package.
libdecnumber/
	* decCommon.c (decFinalize): Fix duplicated words in
	comment; the the -> the.
libgcc/
	* unwind-dw2-fde.c (struct fde_accumulator): Fix duplicated
	words in comment; is is -> is.
libgfortran/
	* configure.host: Fix duplicated words; the the -> the.
libgm2/
	* configure.host: Fix duplicated words; the the -> the.
libgomp/
	* libgomp.texi (OpenMP 5.2): Fix duplicated words; with with ->
	with.
	(omp_target_associate_ptr): Fix duplicated words; either either ->
	either.
	(omp_init_allocator): Fix duplicated words; be be -> be.
	(omp_realloc): Fix duplicated words; is is -> is.
	(OMP_ALLOCATOR): Fix duplicated words; other other -> other.
	* priority_queue.h (priority_queue_multi_p): Fix duplicated words;
	to to -> to.
libiberty/
	* regex.c (byte_re_match_2_internal): Fix duplicated words in comment;
	next next -> next.
	* dyn-string.c (dyn_string_init): Fix duplicated words in comment;
	of of -> of.
libitm/
	* beginend.cc (GTM::gtm_thread::begin_transaction): Fix duplicated
	words in comment; not not -> not to.
libobjc/
	* init.c (duplicate_classes): Fix duplicated words in comment; in in
	-> in.
	* sendmsg.c (__objc_prepare_dtable_for_class): Fix duplicated words
	in comment; the the -> the.
	* encoding.c (objc_layout_structure): Likewise.
libstdc++-v3/
	* acinclude.m4: Fix duplicated words; file file -> file can.
	* configure.host: Fix duplicated words; the the -> the.
libvtv/
	* vtv_rts.cc (vtv_fail): Fix duplicated words; to to -> to.
	* vtv_fail.cc (vtv_fail): Likewise.



	Jakub
  

Comments

Jonathan Wakely April 2, 2024, 9:22 a.m. UTC | #1
On Tue, 2 Apr 2024 at 08:47, Jakub Jelinek wrote:
>
> Hi!
>
> Like in r12-7519-g027e30414492d50feb2854aff38227b14300dc4b, I've done
> git grep -v 'long long\|optab optab\|template template\|double double' | grep ' \([a-zA-Z]\+\) \1 '
>
> This is just part of the changes, mostly for non-gcc directories.
> I'll try to get to the rest soon.  Obviously, the above command also
> finds cases which are correct as is and shouldn't be changed, so one
> needs to manually inspect everything.
>
> I'd hope most of it is pretty obvious, but the config/ and libstdc++-v3/
> hunks include a tweak in a license wording, though other copies of the
> similar license have the wording right.

Those libstdc++ parts are fine, thanks.


>
> Bootstrapped/regtested on x86_64-linux and i686-linux, ok for trunk?
>
> 2024-04-02  Jakub Jelinek  <jakub@redhat.com>
>
>         * Makefile.tpl: Fix duplicated words; returns returns ->
>         returns.
> config/
>         * lcmessage.m4: Fix duplicated words; can can -> can,
>         package package -> package.
> libdecnumber/
>         * decCommon.c (decFinalize): Fix duplicated words in
>         comment; the the -> the.
> libgcc/
>         * unwind-dw2-fde.c (struct fde_accumulator): Fix duplicated
>         words in comment; is is -> is.
> libgfortran/
>         * configure.host: Fix duplicated words; the the -> the.
> libgm2/
>         * configure.host: Fix duplicated words; the the -> the.
> libgomp/
>         * libgomp.texi (OpenMP 5.2): Fix duplicated words; with with ->
>         with.
>         (omp_target_associate_ptr): Fix duplicated words; either either ->
>         either.
>         (omp_init_allocator): Fix duplicated words; be be -> be.
>         (omp_realloc): Fix duplicated words; is is -> is.
>         (OMP_ALLOCATOR): Fix duplicated words; other other -> other.
>         * priority_queue.h (priority_queue_multi_p): Fix duplicated words;
>         to to -> to.
> libiberty/
>         * regex.c (byte_re_match_2_internal): Fix duplicated words in comment;
>         next next -> next.
>         * dyn-string.c (dyn_string_init): Fix duplicated words in comment;
>         of of -> of.
> libitm/
>         * beginend.cc (GTM::gtm_thread::begin_transaction): Fix duplicated
>         words in comment; not not -> not to.
> libobjc/
>         * init.c (duplicate_classes): Fix duplicated words in comment; in in
>         -> in.
>         * sendmsg.c (__objc_prepare_dtable_for_class): Fix duplicated words
>         in comment; the the -> the.
>         * encoding.c (objc_layout_structure): Likewise.
> libstdc++-v3/
>         * acinclude.m4: Fix duplicated words; file file -> file can.
>         * configure.host: Fix duplicated words; the the -> the.
> libvtv/
>         * vtv_rts.cc (vtv_fail): Fix duplicated words; to to -> to.
>         * vtv_fail.cc (vtv_fail): Likewise.
>
> --- Makefile.tpl.jj     2024-01-10 12:19:07.609682386 +0100
> +++ Makefile.tpl        2024-03-28 15:38:31.471917678 +0100
> @@ -1976,7 +1976,7 @@ configure-target-[+module+]: maybe-all-g
>     (define dep-maybe (lambda ()
>        (if (exist? "hard") "" "maybe-")))
>
> -   ;; dep-kind returns returns "prebootstrap" for configure or build
> +   ;; dep-kind returns "prebootstrap" for configure or build
>     ;; dependencies of bootstrapped modules on a build module
>     ;; (e.g. all-gcc on all-build-bison); "normal" if the dependency is
>     ;; on an "install" target, or if the dependence module is not
> --- config/lcmessage.m4.jj      2020-01-11 16:31:53.155321678 +0100
> +++ config/lcmessage.m4 2024-03-28 16:01:40.879060037 +0100
> @@ -6,13 +6,13 @@ dnl Public License, this file may be dis
>  dnl that contains a configuration script generated by Autoconf, under
>  dnl the same distribution terms as the rest of that program.
>  dnl
> -dnl This file can can be used in projects which are not available under
> +dnl This file can be used in projects which are not available under
>  dnl the GNU General Public License or the GNU Library General Public
>  dnl License but which still want to provide support for the GNU gettext
>  dnl functionality.
>  dnl Please note that the actual code of the GNU gettext library is covered
>  dnl by the GNU Library General Public License, and the rest of the GNU
> -dnl gettext package package is covered by the GNU General Public License.
> +dnl gettext package is covered by the GNU General Public License.
>  dnl They are *not* in the public domain.
>
>  dnl Authors:
> --- libdecnumber/decCommon.c.jj 2024-01-03 12:07:28.096370943 +0100
> +++ libdecnumber/decCommon.c    2024-03-28 16:00:26.576068973 +0100
> @@ -388,7 +388,7 @@ static decFloat * decFinalize(decFloat *
>             UBFROMUI(ub-3, 0);               /* to 00000000 */
>             }
>           /* [note ub could now be to left of msd, and it is not safe */
> -         /* to write to the the left of the msd] */
> +         /* to write to the left of the msd] */
>           /* now at most 3 digits left to non-9 (usually just the one) */
>           for (; ub>=umsd; *ub=0, ub--) {
>             if (*ub==9) continue;            /* carry */
> --- libgcc/unwind-dw2-fde.c.jj  2024-03-23 08:22:50.622605182 +0100
> +++ libgcc/unwind-dw2-fde.c     2024-03-28 15:59:32.552802535 +0100
> @@ -501,7 +501,7 @@ fde_mixed_encoding_extract (struct objec
>  typedef void (*fde_extractor_t) (struct object *, _Unwind_Ptr *, const fde **,
>                                  int);
>
> -// Data is is sorted using radix sort if possible, using an temporary
> +// Data is sorted using radix sort if possible, using an temporary
>  // auxiliary data structure of the same size as the input. When running
>  // out of memory do in-place heap sort.
>
> --- libgfortran/configure.host.jj       2022-01-11 23:11:23.816270115 +0100
> +++ libgfortran/configure.host  2024-03-28 15:58:11.247906549 +0100
> @@ -1,7 +1,7 @@
>  # configure.host
>  #
>  # This shell script handles all host based configuration for libgfortran.
> -# It sets various shell variables based on the the host triplet.
> +# It sets various shell variables based on the host triplet.
>  # You can modify this shell script without rerunning autoconf/aclocal/etc.
>  # This file is "sourced", not executed.
>  #
> --- libgm2/configure.host.jj    2023-11-13 21:39:19.790341988 +0100
> +++ libgm2/configure.host       2024-03-28 15:57:52.175165531 +0100
> @@ -1,7 +1,7 @@
>  # configure.host
>  #
>  # This shell script handles all host based configuration for libstdc++.
> -# It sets various shell variables based on the the host and the
> +# It sets various shell variables based on the host and the
>  # configuration options.  You can modify this shell script without needing
>  # to rerun autoconf/aclocal/etc.  This file is "sourced" not executed.
>  #
> --- libgomp/libgomp.texi.jj     2024-03-13 09:11:45.425972326 +0100
> +++ libgomp/libgomp.texi        2024-03-28 15:57:18.081628399 +0100
> @@ -385,7 +385,7 @@ to address of matching mapped list item
>        @code{-Wunknown-pragmas} (implied by @code{-Wall}) and @code{-Wattributes}
>        (enabled by default), respectively; for Fortran free-source code, there is
>        a warning enabled by default and, for fixed-source code, the @code{omx}
> -      sentinel is warned for with with @code{-Wsurprising} (enabled by
> +      sentinel is warned for with @code{-Wsurprising} (enabled by
>        @code{-Wall}).  Unknown clauses are always rejected with an error.}
>  @item Clauses on @code{end} directive can be on directive @tab Y @tab
>  @item @code{destroy} clause with destroy-var argument on @code{depobj}
> @@ -2218,7 +2218,7 @@ in the @code{to} and @code{from} clauses
>  to transfer data between the associated pointers. The reference count of such
>  associated storage is infinite.  The association can be removed by calling
>  @code{omp_target_disassociate_ptr} which should be done before the lifetime
> -of either either storage ends.
> +of either storage ends.
>
>  The routine returns nonzero (@code{EINVAL}) when the @var{device_num} invalid,
>  for when the initial device or the associated device shares memory with the
> @@ -2815,7 +2815,7 @@ traits; if an allocator that fulfills th
>  @code{omp_null_allocator} is returned.
>
>  The predefined memory spaces and available traits can be found at
> -@ref{OMP_ALLOCATOR}, where the trait names have to be be prefixed by
> +@ref{OMP_ALLOCATOR}, where the trait names have to be prefixed by
>  @code{omp_atk_} (e.g. @code{omp_atk_pinned}) and the named trait values by
>  @code{omp_atv_} (e.g. @code{omp_atv_true}); additionally, @code{omp_atv_default}
>  may be used as trait value to specify that the default value should be used.
> @@ -3210,7 +3210,7 @@ The @var{allocator} and @var{free_alloca
>  allocator, an allocator handle or @code{omp_null_allocator}.  If
>  @var{free_allocator} is @code{omp_null_allocator}, the implementation
>  automatically determines the allocator used for the allocation of @var{ptr}.
> -If @var{allocator} is @code{omp_null_allocator} and @var{ptr} is is not a
> +If @var{allocator} is @code{omp_null_allocator} and @var{ptr} is not a
>  null pointer, the same allocator as @code{free_allocator} is used and
>  when @var{ptr} is a null pointer the allocator specified by the
>  @var{def-allocator-var} ICV is used.
> @@ -3468,7 +3468,7 @@ as listed below.  Except that the last t
>
>  For the @code{fallback} trait, the default value is @code{null_fb} for the
>  @code{omp_default_mem_alloc} allocator and any allocator that is associated
> -with device memory; for all other other allocators, it is @code{default_mem_fb}
> +with device memory; for all other allocators, it is @code{default_mem_fb}
>  by default.
>
>  Examples:
> --- libgomp/priority_queue.h.jj 2024-01-03 12:07:47.708096186 +0100
> +++ libgomp/priority_queue.h    2024-03-28 15:55:55.300752071 +0100
> @@ -137,7 +137,7 @@ extern struct gomp_task *priority_tree_n
>                                                   bool *);
>
>  /* Return TRUE if there is more than one priority in HEAD.  This is
> -   used throughout to to choose between the fast path (priority 0 only
> +   used throughout to choose between the fast path (priority 0 only
>     items) and a world with multiple priorities.  */
>
>  static inline bool
> --- libiberty/regex.c.jj        2024-01-03 12:07:48.530084670 +0100
> +++ libiberty/regex.c   2024-03-28 15:54:19.611050948 +0100
> @@ -5597,7 +5597,7 @@ byte_re_match_2_internal (struct re_patt
>       to resume scanning the pattern; the second one is where to resume
>       scanning the strings.  If the latter is zero, the failure point is
>       a ``dummy''; if a failure happens and the failure point is a dummy,
> -     it gets discarded and the next next one is tried.  */
> +     it gets discarded and the next one is tried.  */
>  #ifdef MATCH_MAY_ALLOCATE /* otherwise, this is global.  */
>    PREFIX(fail_stack_type) fail_stack;
>  #endif
> --- libiberty/dyn-string.c.jj   2024-01-03 12:07:48.505085020 +0100
> +++ libiberty/dyn-string.c      2024-03-28 15:54:43.817722365 +0100
> @@ -47,7 +47,7 @@ Boston, MA 02110-1301, USA.  */
>
>  /* Performs in-place initialization of a dyn_string struct.  This
>     function can be used with a dyn_string struct on the stack or
> -   embedded in another object.  The contents of of the string itself
> +   embedded in another object.  The contents of the string itself
>     are still dynamically allocated.  The string initially is capable
>     of holding at least SPACE characeters, including the terminating
>     NUL.  If SPACE is 0, it will silently be increated to 1.
> --- libitm/beginend.cc.jj       2024-01-03 12:07:48.784081112 +0100
> +++ libitm/beginend.cc  2024-03-28 15:53:31.595702705 +0100
> @@ -200,7 +200,7 @@ GTM::gtm_thread::begin_transaction (uint
>      {
>        // Note that the snapshot of htm_fastpath that we take here could be
>        // outdated, and a different method group than dispatch_htm may have
> -      // been chosen in the meantime.  Therefore, take care not not touch
> +      // been chosen in the meantime.  Therefore, take care not to touch
>        // anything besides the serial lock, which is independent of method
>        // groups.
>        for (uint32_t t = serial_lock.get_htm_fastpath(); t; t--)
> --- libobjc/init.c.jj   2024-01-03 12:07:49.201075270 +0100
> +++ libobjc/init.c      2024-03-28 15:52:06.592856528 +0100
> @@ -63,7 +63,7 @@ static struct objc_list *uninitialized_s
>     a class twice, we ignore it the second time.  On some platforms,
>     where the order in which modules are loaded is well defined, this
>     allows you to replace a class in a shared library by linking in a
> -   new implementation which is loaded in in the right order, and which
> +   new implementation which is loaded in the right order, and which
>     overrides the existing one.
>
>     Protected by __objc_runtime_mutex.  */
> --- libobjc/sendmsg.c.jj        2024-01-03 12:07:49.208075172 +0100
> +++ libobjc/sendmsg.c   2024-03-28 15:51:47.403117009 +0100
> @@ -1047,7 +1047,7 @@ __objc_prepare_dtable_for_class (Class c
>
>    /* This table could be initialized in init.c.  We cannot use the
>       class name since the class maintains the instance methods and the
> -     meta class maintains the the class methods yet both share the
> +     meta class maintains the class methods yet both share the
>       same name.  Classes should be unique in any program.  */
>    if (! prepared_dtable_table)
>      prepared_dtable_table
> --- libobjc/encoding.c.jj       2024-01-03 12:07:49.236074779 +0100
> +++ libobjc/encoding.c  2024-03-28 15:52:44.214345856 +0100
> @@ -1088,7 +1088,7 @@ objc_layout_structure (const char *type,
>           && *ntype++ != '=')
>      /* do nothing */;
>
> -  /* If there's a "<name>=", ntype - 1 points to '='; skip the the name */
> +  /* If there's a "<name>=", ntype - 1 points to '='; skip the name.  */
>    if (*(ntype - 1) == '=')
>      type = ntype;
>
> --- libstdc++-v3/acinclude.m4.jj        2024-01-31 10:55:37.748164636 +0100
> +++ libstdc++-v3/acinclude.m4   2024-03-28 15:50:49.309905562 +0100
> @@ -4493,7 +4493,7 @@ AC_DEFUN([GLIBCXX_CHECK_GTHREADS], [
>  # Check whether LC_MESSAGES is available in <locale.h>.
>  # Ulrich Drepper <drepper@cygnus.com>, 1995.
>  #
> -# This file file be copied and used freely without restrictions.  It can
> +# This file can be copied and used freely without restrictions.  It can
>  # be used in projects which are not available under the GNU Public License
>  # but which still want to provide support for the GNU gettext functionality.
>  # Please note that the actual code is *not* freely available.
> --- libstdc++-v3/configure.host.jj      2023-09-11 11:05:47.619726474 +0200
> +++ libstdc++-v3/configure.host 2024-03-28 15:41:56.740134644 +0100
> @@ -1,7 +1,7 @@
>  # configure.host
>  #
>  # This shell script handles all host based configuration for libstdc++.
> -# It sets various shell variables based on the the host and the
> +# It sets various shell variables based on the host and the
>  # configuration options.  You can modify this shell script without needing
>  # to rerun autoconf/aclocal/etc.  This file is "sourced" not executed.
>  #
> --- libvtv/vtv_rts.cc.jj        2024-01-03 12:08:23.803590499 +0100
> +++ libvtv/vtv_rts.cc   2024-03-28 15:41:17.621665634 +0100
> @@ -1791,7 +1791,7 @@ vtv_fail (const char *msg, void **data_s
>                ptr_from_set_handle_handle (*data_set_ptr) :
>               *data_set_ptr);
>    buf_len = strlen (buffer);
> -  /*  Send this to to stderr.  */
> +  /* Send this to stderr.  */
>    write (2, buffer, buf_len);
>
>  #ifndef VTV_NO_ABORT
> --- libvtv/vtv_fail.cc.jj       2024-01-03 12:08:23.804590485 +0100
> +++ libvtv/vtv_fail.cc  2024-03-28 15:41:05.055836203 +0100
> @@ -201,7 +201,7 @@ vtv_fail (const char *msg, void **data_s
>                ptr_from_set_handle_handle (*data_set_ptr) :
>               *data_set_ptr);
>    buf_len = strlen (buffer);
> -  /*  Send this to to stderr.  */
> +  /* Send this to stderr.  */
>    write (2, buffer, buf_len);
>
>    if (!vtv_no_abort)
>
>
>         Jakub
>
  
Richard Biener April 2, 2024, 11:22 a.m. UTC | #2
On Tue, 2 Apr 2024, Jakub Jelinek wrote:

> Hi!
> 
> Like in r12-7519-g027e30414492d50feb2854aff38227b14300dc4b, I've done
> git grep -v 'long long\|optab optab\|template template\|double double' | grep ' \([a-zA-Z]\+\) \1 '
> 
> This is just part of the changes, mostly for non-gcc directories.
> I'll try to get to the rest soon.  Obviously, the above command also
> finds cases which are correct as is and shouldn't be changed, so one
> needs to manually inspect everything.
> 
> I'd hope most of it is pretty obvious, but the config/ and libstdc++-v3/
> hunks include a tweak in a license wording, though other copies of the
> similar license have the wording right.
> 
> Bootstrapped/regtested on x86_64-linux and i686-linux, ok for trunk?

OK

> 2024-04-02  Jakub Jelinek  <jakub@redhat.com>
> 
> 	* Makefile.tpl: Fix duplicated words; returns returns ->
> 	returns.
> config/
> 	* lcmessage.m4: Fix duplicated words; can can -> can,
> 	package package -> package.
> libdecnumber/
> 	* decCommon.c (decFinalize): Fix duplicated words in
> 	comment; the the -> the.
> libgcc/
> 	* unwind-dw2-fde.c (struct fde_accumulator): Fix duplicated
> 	words in comment; is is -> is.
> libgfortran/
> 	* configure.host: Fix duplicated words; the the -> the.
> libgm2/
> 	* configure.host: Fix duplicated words; the the -> the.
> libgomp/
> 	* libgomp.texi (OpenMP 5.2): Fix duplicated words; with with ->
> 	with.
> 	(omp_target_associate_ptr): Fix duplicated words; either either ->
> 	either.
> 	(omp_init_allocator): Fix duplicated words; be be -> be.
> 	(omp_realloc): Fix duplicated words; is is -> is.
> 	(OMP_ALLOCATOR): Fix duplicated words; other other -> other.
> 	* priority_queue.h (priority_queue_multi_p): Fix duplicated words;
> 	to to -> to.
> libiberty/
> 	* regex.c (byte_re_match_2_internal): Fix duplicated words in comment;
> 	next next -> next.
> 	* dyn-string.c (dyn_string_init): Fix duplicated words in comment;
> 	of of -> of.
> libitm/
> 	* beginend.cc (GTM::gtm_thread::begin_transaction): Fix duplicated
> 	words in comment; not not -> not to.
> libobjc/
> 	* init.c (duplicate_classes): Fix duplicated words in comment; in in
> 	-> in.
> 	* sendmsg.c (__objc_prepare_dtable_for_class): Fix duplicated words
> 	in comment; the the -> the.
> 	* encoding.c (objc_layout_structure): Likewise.
> libstdc++-v3/
> 	* acinclude.m4: Fix duplicated words; file file -> file can.
> 	* configure.host: Fix duplicated words; the the -> the.
> libvtv/
> 	* vtv_rts.cc (vtv_fail): Fix duplicated words; to to -> to.
> 	* vtv_fail.cc (vtv_fail): Likewise.
> 
> --- Makefile.tpl.jj	2024-01-10 12:19:07.609682386 +0100
> +++ Makefile.tpl	2024-03-28 15:38:31.471917678 +0100
> @@ -1976,7 +1976,7 @@ configure-target-[+module+]: maybe-all-g
>     (define dep-maybe (lambda ()
>        (if (exist? "hard") "" "maybe-")))
>  
> -   ;; dep-kind returns returns "prebootstrap" for configure or build
> +   ;; dep-kind returns "prebootstrap" for configure or build
>     ;; dependencies of bootstrapped modules on a build module
>     ;; (e.g. all-gcc on all-build-bison); "normal" if the dependency is
>     ;; on an "install" target, or if the dependence module is not
> --- config/lcmessage.m4.jj	2020-01-11 16:31:53.155321678 +0100
> +++ config/lcmessage.m4	2024-03-28 16:01:40.879060037 +0100
> @@ -6,13 +6,13 @@ dnl Public License, this file may be dis
>  dnl that contains a configuration script generated by Autoconf, under
>  dnl the same distribution terms as the rest of that program.
>  dnl
> -dnl This file can can be used in projects which are not available under
> +dnl This file can be used in projects which are not available under
>  dnl the GNU General Public License or the GNU Library General Public
>  dnl License but which still want to provide support for the GNU gettext
>  dnl functionality.
>  dnl Please note that the actual code of the GNU gettext library is covered
>  dnl by the GNU Library General Public License, and the rest of the GNU
> -dnl gettext package package is covered by the GNU General Public License.
> +dnl gettext package is covered by the GNU General Public License.
>  dnl They are *not* in the public domain.
>  
>  dnl Authors:
> --- libdecnumber/decCommon.c.jj	2024-01-03 12:07:28.096370943 +0100
> +++ libdecnumber/decCommon.c	2024-03-28 16:00:26.576068973 +0100
> @@ -388,7 +388,7 @@ static decFloat * decFinalize(decFloat *
>  	    UBFROMUI(ub-3, 0);		     /* to 00000000 */
>  	    }
>  	  /* [note ub could now be to left of msd, and it is not safe */
> -	  /* to write to the the left of the msd] */
> +	  /* to write to the left of the msd] */
>  	  /* now at most 3 digits left to non-9 (usually just the one) */
>  	  for (; ub>=umsd; *ub=0, ub--) {
>  	    if (*ub==9) continue;	     /* carry */
> --- libgcc/unwind-dw2-fde.c.jj	2024-03-23 08:22:50.622605182 +0100
> +++ libgcc/unwind-dw2-fde.c	2024-03-28 15:59:32.552802535 +0100
> @@ -501,7 +501,7 @@ fde_mixed_encoding_extract (struct objec
>  typedef void (*fde_extractor_t) (struct object *, _Unwind_Ptr *, const fde **,
>  				 int);
>  
> -// Data is is sorted using radix sort if possible, using an temporary
> +// Data is sorted using radix sort if possible, using an temporary
>  // auxiliary data structure of the same size as the input. When running
>  // out of memory do in-place heap sort.
>  
> --- libgfortran/configure.host.jj	2022-01-11 23:11:23.816270115 +0100
> +++ libgfortran/configure.host	2024-03-28 15:58:11.247906549 +0100
> @@ -1,7 +1,7 @@
>  # configure.host
>  #
>  # This shell script handles all host based configuration for libgfortran.
> -# It sets various shell variables based on the the host triplet.
> +# It sets various shell variables based on the host triplet.
>  # You can modify this shell script without rerunning autoconf/aclocal/etc.
>  # This file is "sourced", not executed.
>  #
> --- libgm2/configure.host.jj	2023-11-13 21:39:19.790341988 +0100
> +++ libgm2/configure.host	2024-03-28 15:57:52.175165531 +0100
> @@ -1,7 +1,7 @@
>  # configure.host
>  #
>  # This shell script handles all host based configuration for libstdc++.
> -# It sets various shell variables based on the the host and the
> +# It sets various shell variables based on the host and the
>  # configuration options.  You can modify this shell script without needing
>  # to rerun autoconf/aclocal/etc.  This file is "sourced" not executed.
>  #
> --- libgomp/libgomp.texi.jj	2024-03-13 09:11:45.425972326 +0100
> +++ libgomp/libgomp.texi	2024-03-28 15:57:18.081628399 +0100
> @@ -385,7 +385,7 @@ to address of matching mapped list item
>        @code{-Wunknown-pragmas} (implied by @code{-Wall}) and @code{-Wattributes}
>        (enabled by default), respectively; for Fortran free-source code, there is
>        a warning enabled by default and, for fixed-source code, the @code{omx}
> -      sentinel is warned for with with @code{-Wsurprising} (enabled by
> +      sentinel is warned for with @code{-Wsurprising} (enabled by
>        @code{-Wall}).  Unknown clauses are always rejected with an error.}
>  @item Clauses on @code{end} directive can be on directive @tab Y @tab
>  @item @code{destroy} clause with destroy-var argument on @code{depobj}
> @@ -2218,7 +2218,7 @@ in the @code{to} and @code{from} clauses
>  to transfer data between the associated pointers. The reference count of such
>  associated storage is infinite.  The association can be removed by calling
>  @code{omp_target_disassociate_ptr} which should be done before the lifetime
> -of either either storage ends.
> +of either storage ends.
>  
>  The routine returns nonzero (@code{EINVAL}) when the @var{device_num} invalid,
>  for when the initial device or the associated device shares memory with the
> @@ -2815,7 +2815,7 @@ traits; if an allocator that fulfills th
>  @code{omp_null_allocator} is returned.
>  
>  The predefined memory spaces and available traits can be found at
> -@ref{OMP_ALLOCATOR}, where the trait names have to be be prefixed by
> +@ref{OMP_ALLOCATOR}, where the trait names have to be prefixed by
>  @code{omp_atk_} (e.g. @code{omp_atk_pinned}) and the named trait values by
>  @code{omp_atv_} (e.g. @code{omp_atv_true}); additionally, @code{omp_atv_default}
>  may be used as trait value to specify that the default value should be used.
> @@ -3210,7 +3210,7 @@ The @var{allocator} and @var{free_alloca
>  allocator, an allocator handle or @code{omp_null_allocator}.  If
>  @var{free_allocator} is @code{omp_null_allocator}, the implementation
>  automatically determines the allocator used for the allocation of @var{ptr}.
> -If @var{allocator} is @code{omp_null_allocator} and @var{ptr} is is not a
> +If @var{allocator} is @code{omp_null_allocator} and @var{ptr} is not a
>  null pointer, the same allocator as @code{free_allocator} is used and
>  when @var{ptr} is a null pointer the allocator specified by the
>  @var{def-allocator-var} ICV is used.
> @@ -3468,7 +3468,7 @@ as listed below.  Except that the last t
>  
>  For the @code{fallback} trait, the default value is @code{null_fb} for the
>  @code{omp_default_mem_alloc} allocator and any allocator that is associated
> -with device memory; for all other other allocators, it is @code{default_mem_fb}
> +with device memory; for all other allocators, it is @code{default_mem_fb}
>  by default.
>  
>  Examples:
> --- libgomp/priority_queue.h.jj	2024-01-03 12:07:47.708096186 +0100
> +++ libgomp/priority_queue.h	2024-03-28 15:55:55.300752071 +0100
> @@ -137,7 +137,7 @@ extern struct gomp_task *priority_tree_n
>  						  bool *);
>  
>  /* Return TRUE if there is more than one priority in HEAD.  This is
> -   used throughout to to choose between the fast path (priority 0 only
> +   used throughout to choose between the fast path (priority 0 only
>     items) and a world with multiple priorities.  */
>  
>  static inline bool
> --- libiberty/regex.c.jj	2024-01-03 12:07:48.530084670 +0100
> +++ libiberty/regex.c	2024-03-28 15:54:19.611050948 +0100
> @@ -5597,7 +5597,7 @@ byte_re_match_2_internal (struct re_patt
>       to resume scanning the pattern; the second one is where to resume
>       scanning the strings.  If the latter is zero, the failure point is
>       a ``dummy''; if a failure happens and the failure point is a dummy,
> -     it gets discarded and the next next one is tried.  */
> +     it gets discarded and the next one is tried.  */
>  #ifdef MATCH_MAY_ALLOCATE /* otherwise, this is global.  */
>    PREFIX(fail_stack_type) fail_stack;
>  #endif
> --- libiberty/dyn-string.c.jj	2024-01-03 12:07:48.505085020 +0100
> +++ libiberty/dyn-string.c	2024-03-28 15:54:43.817722365 +0100
> @@ -47,7 +47,7 @@ Boston, MA 02110-1301, USA.  */
>  
>  /* Performs in-place initialization of a dyn_string struct.  This
>     function can be used with a dyn_string struct on the stack or
> -   embedded in another object.  The contents of of the string itself
> +   embedded in another object.  The contents of the string itself
>     are still dynamically allocated.  The string initially is capable
>     of holding at least SPACE characeters, including the terminating
>     NUL.  If SPACE is 0, it will silently be increated to 1.  
> --- libitm/beginend.cc.jj	2024-01-03 12:07:48.784081112 +0100
> +++ libitm/beginend.cc	2024-03-28 15:53:31.595702705 +0100
> @@ -200,7 +200,7 @@ GTM::gtm_thread::begin_transaction (uint
>      {
>        // Note that the snapshot of htm_fastpath that we take here could be
>        // outdated, and a different method group than dispatch_htm may have
> -      // been chosen in the meantime.  Therefore, take care not not touch
> +      // been chosen in the meantime.  Therefore, take care not to touch
>        // anything besides the serial lock, which is independent of method
>        // groups.
>        for (uint32_t t = serial_lock.get_htm_fastpath(); t; t--)
> --- libobjc/init.c.jj	2024-01-03 12:07:49.201075270 +0100
> +++ libobjc/init.c	2024-03-28 15:52:06.592856528 +0100
> @@ -63,7 +63,7 @@ static struct objc_list *uninitialized_s
>     a class twice, we ignore it the second time.  On some platforms,
>     where the order in which modules are loaded is well defined, this
>     allows you to replace a class in a shared library by linking in a
> -   new implementation which is loaded in in the right order, and which
> +   new implementation which is loaded in the right order, and which
>     overrides the existing one.
>  
>     Protected by __objc_runtime_mutex.  */
> --- libobjc/sendmsg.c.jj	2024-01-03 12:07:49.208075172 +0100
> +++ libobjc/sendmsg.c	2024-03-28 15:51:47.403117009 +0100
> @@ -1047,7 +1047,7 @@ __objc_prepare_dtable_for_class (Class c
>  
>    /* This table could be initialized in init.c.  We cannot use the
>       class name since the class maintains the instance methods and the
> -     meta class maintains the the class methods yet both share the
> +     meta class maintains the class methods yet both share the
>       same name.  Classes should be unique in any program.  */
>    if (! prepared_dtable_table)
>      prepared_dtable_table 
> --- libobjc/encoding.c.jj	2024-01-03 12:07:49.236074779 +0100
> +++ libobjc/encoding.c	2024-03-28 15:52:44.214345856 +0100
> @@ -1088,7 +1088,7 @@ objc_layout_structure (const char *type,
>           && *ntype++ != '=')
>      /* do nothing */;
>  
> -  /* If there's a "<name>=", ntype - 1 points to '='; skip the the name */
> +  /* If there's a "<name>=", ntype - 1 points to '='; skip the name.  */
>    if (*(ntype - 1) == '=')
>      type = ntype;
>  
> --- libstdc++-v3/acinclude.m4.jj	2024-01-31 10:55:37.748164636 +0100
> +++ libstdc++-v3/acinclude.m4	2024-03-28 15:50:49.309905562 +0100
> @@ -4493,7 +4493,7 @@ AC_DEFUN([GLIBCXX_CHECK_GTHREADS], [
>  # Check whether LC_MESSAGES is available in <locale.h>.
>  # Ulrich Drepper <drepper@cygnus.com>, 1995.
>  #
> -# This file file be copied and used freely without restrictions.  It can
> +# This file can be copied and used freely without restrictions.  It can
>  # be used in projects which are not available under the GNU Public License
>  # but which still want to provide support for the GNU gettext functionality.
>  # Please note that the actual code is *not* freely available.
> --- libstdc++-v3/configure.host.jj	2023-09-11 11:05:47.619726474 +0200
> +++ libstdc++-v3/configure.host	2024-03-28 15:41:56.740134644 +0100
> @@ -1,7 +1,7 @@
>  # configure.host
>  #
>  # This shell script handles all host based configuration for libstdc++.
> -# It sets various shell variables based on the the host and the
> +# It sets various shell variables based on the host and the
>  # configuration options.  You can modify this shell script without needing
>  # to rerun autoconf/aclocal/etc.  This file is "sourced" not executed.
>  #
> --- libvtv/vtv_rts.cc.jj	2024-01-03 12:08:23.803590499 +0100
> +++ libvtv/vtv_rts.cc	2024-03-28 15:41:17.621665634 +0100
> @@ -1791,7 +1791,7 @@ vtv_fail (const char *msg, void **data_s
>                ptr_from_set_handle_handle (*data_set_ptr) :
>  	      *data_set_ptr);
>    buf_len = strlen (buffer);
> -  /*  Send this to to stderr.  */
> +  /* Send this to stderr.  */
>    write (2, buffer, buf_len);
>  
>  #ifndef VTV_NO_ABORT
> --- libvtv/vtv_fail.cc.jj	2024-01-03 12:08:23.804590485 +0100
> +++ libvtv/vtv_fail.cc	2024-03-28 15:41:05.055836203 +0100
> @@ -201,7 +201,7 @@ vtv_fail (const char *msg, void **data_s
>                ptr_from_set_handle_handle (*data_set_ptr) :
>  	      *data_set_ptr);
>    buf_len = strlen (buffer);
> -  /*  Send this to to stderr.  */
> +  /* Send this to stderr.  */
>    write (2, buffer, buf_len);
>  
>    if (!vtv_no_abort)
> 
> 
> 	Jakub
> 
>
  

Patch

--- Makefile.tpl.jj	2024-01-10 12:19:07.609682386 +0100
+++ Makefile.tpl	2024-03-28 15:38:31.471917678 +0100
@@ -1976,7 +1976,7 @@  configure-target-[+module+]: maybe-all-g
    (define dep-maybe (lambda ()
       (if (exist? "hard") "" "maybe-")))
 
-   ;; dep-kind returns returns "prebootstrap" for configure or build
+   ;; dep-kind returns "prebootstrap" for configure or build
    ;; dependencies of bootstrapped modules on a build module
    ;; (e.g. all-gcc on all-build-bison); "normal" if the dependency is
    ;; on an "install" target, or if the dependence module is not
--- config/lcmessage.m4.jj	2020-01-11 16:31:53.155321678 +0100
+++ config/lcmessage.m4	2024-03-28 16:01:40.879060037 +0100
@@ -6,13 +6,13 @@  dnl Public License, this file may be dis
 dnl that contains a configuration script generated by Autoconf, under
 dnl the same distribution terms as the rest of that program.
 dnl
-dnl This file can can be used in projects which are not available under
+dnl This file can be used in projects which are not available under
 dnl the GNU General Public License or the GNU Library General Public
 dnl License but which still want to provide support for the GNU gettext
 dnl functionality.
 dnl Please note that the actual code of the GNU gettext library is covered
 dnl by the GNU Library General Public License, and the rest of the GNU
-dnl gettext package package is covered by the GNU General Public License.
+dnl gettext package is covered by the GNU General Public License.
 dnl They are *not* in the public domain.
 
 dnl Authors:
--- libdecnumber/decCommon.c.jj	2024-01-03 12:07:28.096370943 +0100
+++ libdecnumber/decCommon.c	2024-03-28 16:00:26.576068973 +0100
@@ -388,7 +388,7 @@  static decFloat * decFinalize(decFloat *
 	    UBFROMUI(ub-3, 0);		     /* to 00000000 */
 	    }
 	  /* [note ub could now be to left of msd, and it is not safe */
-	  /* to write to the the left of the msd] */
+	  /* to write to the left of the msd] */
 	  /* now at most 3 digits left to non-9 (usually just the one) */
 	  for (; ub>=umsd; *ub=0, ub--) {
 	    if (*ub==9) continue;	     /* carry */
--- libgcc/unwind-dw2-fde.c.jj	2024-03-23 08:22:50.622605182 +0100
+++ libgcc/unwind-dw2-fde.c	2024-03-28 15:59:32.552802535 +0100
@@ -501,7 +501,7 @@  fde_mixed_encoding_extract (struct objec
 typedef void (*fde_extractor_t) (struct object *, _Unwind_Ptr *, const fde **,
 				 int);
 
-// Data is is sorted using radix sort if possible, using an temporary
+// Data is sorted using radix sort if possible, using an temporary
 // auxiliary data structure of the same size as the input. When running
 // out of memory do in-place heap sort.
 
--- libgfortran/configure.host.jj	2022-01-11 23:11:23.816270115 +0100
+++ libgfortran/configure.host	2024-03-28 15:58:11.247906549 +0100
@@ -1,7 +1,7 @@ 
 # configure.host
 #
 # This shell script handles all host based configuration for libgfortran.
-# It sets various shell variables based on the the host triplet.
+# It sets various shell variables based on the host triplet.
 # You can modify this shell script without rerunning autoconf/aclocal/etc.
 # This file is "sourced", not executed.
 #
--- libgm2/configure.host.jj	2023-11-13 21:39:19.790341988 +0100
+++ libgm2/configure.host	2024-03-28 15:57:52.175165531 +0100
@@ -1,7 +1,7 @@ 
 # configure.host
 #
 # This shell script handles all host based configuration for libstdc++.
-# It sets various shell variables based on the the host and the
+# It sets various shell variables based on the host and the
 # configuration options.  You can modify this shell script without needing
 # to rerun autoconf/aclocal/etc.  This file is "sourced" not executed.
 #
--- libgomp/libgomp.texi.jj	2024-03-13 09:11:45.425972326 +0100
+++ libgomp/libgomp.texi	2024-03-28 15:57:18.081628399 +0100
@@ -385,7 +385,7 @@  to address of matching mapped list item
       @code{-Wunknown-pragmas} (implied by @code{-Wall}) and @code{-Wattributes}
       (enabled by default), respectively; for Fortran free-source code, there is
       a warning enabled by default and, for fixed-source code, the @code{omx}
-      sentinel is warned for with with @code{-Wsurprising} (enabled by
+      sentinel is warned for with @code{-Wsurprising} (enabled by
       @code{-Wall}).  Unknown clauses are always rejected with an error.}
 @item Clauses on @code{end} directive can be on directive @tab Y @tab
 @item @code{destroy} clause with destroy-var argument on @code{depobj}
@@ -2218,7 +2218,7 @@  in the @code{to} and @code{from} clauses
 to transfer data between the associated pointers. The reference count of such
 associated storage is infinite.  The association can be removed by calling
 @code{omp_target_disassociate_ptr} which should be done before the lifetime
-of either either storage ends.
+of either storage ends.
 
 The routine returns nonzero (@code{EINVAL}) when the @var{device_num} invalid,
 for when the initial device or the associated device shares memory with the
@@ -2815,7 +2815,7 @@  traits; if an allocator that fulfills th
 @code{omp_null_allocator} is returned.
 
 The predefined memory spaces and available traits can be found at
-@ref{OMP_ALLOCATOR}, where the trait names have to be be prefixed by
+@ref{OMP_ALLOCATOR}, where the trait names have to be prefixed by
 @code{omp_atk_} (e.g. @code{omp_atk_pinned}) and the named trait values by
 @code{omp_atv_} (e.g. @code{omp_atv_true}); additionally, @code{omp_atv_default}
 may be used as trait value to specify that the default value should be used.
@@ -3210,7 +3210,7 @@  The @var{allocator} and @var{free_alloca
 allocator, an allocator handle or @code{omp_null_allocator}.  If
 @var{free_allocator} is @code{omp_null_allocator}, the implementation
 automatically determines the allocator used for the allocation of @var{ptr}.
-If @var{allocator} is @code{omp_null_allocator} and @var{ptr} is is not a
+If @var{allocator} is @code{omp_null_allocator} and @var{ptr} is not a
 null pointer, the same allocator as @code{free_allocator} is used and
 when @var{ptr} is a null pointer the allocator specified by the
 @var{def-allocator-var} ICV is used.
@@ -3468,7 +3468,7 @@  as listed below.  Except that the last t
 
 For the @code{fallback} trait, the default value is @code{null_fb} for the
 @code{omp_default_mem_alloc} allocator and any allocator that is associated
-with device memory; for all other other allocators, it is @code{default_mem_fb}
+with device memory; for all other allocators, it is @code{default_mem_fb}
 by default.
 
 Examples:
--- libgomp/priority_queue.h.jj	2024-01-03 12:07:47.708096186 +0100
+++ libgomp/priority_queue.h	2024-03-28 15:55:55.300752071 +0100
@@ -137,7 +137,7 @@  extern struct gomp_task *priority_tree_n
 						  bool *);
 
 /* Return TRUE if there is more than one priority in HEAD.  This is
-   used throughout to to choose between the fast path (priority 0 only
+   used throughout to choose between the fast path (priority 0 only
    items) and a world with multiple priorities.  */
 
 static inline bool
--- libiberty/regex.c.jj	2024-01-03 12:07:48.530084670 +0100
+++ libiberty/regex.c	2024-03-28 15:54:19.611050948 +0100
@@ -5597,7 +5597,7 @@  byte_re_match_2_internal (struct re_patt
      to resume scanning the pattern; the second one is where to resume
      scanning the strings.  If the latter is zero, the failure point is
      a ``dummy''; if a failure happens and the failure point is a dummy,
-     it gets discarded and the next next one is tried.  */
+     it gets discarded and the next one is tried.  */
 #ifdef MATCH_MAY_ALLOCATE /* otherwise, this is global.  */
   PREFIX(fail_stack_type) fail_stack;
 #endif
--- libiberty/dyn-string.c.jj	2024-01-03 12:07:48.505085020 +0100
+++ libiberty/dyn-string.c	2024-03-28 15:54:43.817722365 +0100
@@ -47,7 +47,7 @@  Boston, MA 02110-1301, USA.  */
 
 /* Performs in-place initialization of a dyn_string struct.  This
    function can be used with a dyn_string struct on the stack or
-   embedded in another object.  The contents of of the string itself
+   embedded in another object.  The contents of the string itself
    are still dynamically allocated.  The string initially is capable
    of holding at least SPACE characeters, including the terminating
    NUL.  If SPACE is 0, it will silently be increated to 1.  
--- libitm/beginend.cc.jj	2024-01-03 12:07:48.784081112 +0100
+++ libitm/beginend.cc	2024-03-28 15:53:31.595702705 +0100
@@ -200,7 +200,7 @@  GTM::gtm_thread::begin_transaction (uint
     {
       // Note that the snapshot of htm_fastpath that we take here could be
       // outdated, and a different method group than dispatch_htm may have
-      // been chosen in the meantime.  Therefore, take care not not touch
+      // been chosen in the meantime.  Therefore, take care not to touch
       // anything besides the serial lock, which is independent of method
       // groups.
       for (uint32_t t = serial_lock.get_htm_fastpath(); t; t--)
--- libobjc/init.c.jj	2024-01-03 12:07:49.201075270 +0100
+++ libobjc/init.c	2024-03-28 15:52:06.592856528 +0100
@@ -63,7 +63,7 @@  static struct objc_list *uninitialized_s
    a class twice, we ignore it the second time.  On some platforms,
    where the order in which modules are loaded is well defined, this
    allows you to replace a class in a shared library by linking in a
-   new implementation which is loaded in in the right order, and which
+   new implementation which is loaded in the right order, and which
    overrides the existing one.
 
    Protected by __objc_runtime_mutex.  */
--- libobjc/sendmsg.c.jj	2024-01-03 12:07:49.208075172 +0100
+++ libobjc/sendmsg.c	2024-03-28 15:51:47.403117009 +0100
@@ -1047,7 +1047,7 @@  __objc_prepare_dtable_for_class (Class c
 
   /* This table could be initialized in init.c.  We cannot use the
      class name since the class maintains the instance methods and the
-     meta class maintains the the class methods yet both share the
+     meta class maintains the class methods yet both share the
      same name.  Classes should be unique in any program.  */
   if (! prepared_dtable_table)
     prepared_dtable_table 
--- libobjc/encoding.c.jj	2024-01-03 12:07:49.236074779 +0100
+++ libobjc/encoding.c	2024-03-28 15:52:44.214345856 +0100
@@ -1088,7 +1088,7 @@  objc_layout_structure (const char *type,
          && *ntype++ != '=')
     /* do nothing */;
 
-  /* If there's a "<name>=", ntype - 1 points to '='; skip the the name */
+  /* If there's a "<name>=", ntype - 1 points to '='; skip the name.  */
   if (*(ntype - 1) == '=')
     type = ntype;
 
--- libstdc++-v3/acinclude.m4.jj	2024-01-31 10:55:37.748164636 +0100
+++ libstdc++-v3/acinclude.m4	2024-03-28 15:50:49.309905562 +0100
@@ -4493,7 +4493,7 @@  AC_DEFUN([GLIBCXX_CHECK_GTHREADS], [
 # Check whether LC_MESSAGES is available in <locale.h>.
 # Ulrich Drepper <drepper@cygnus.com>, 1995.
 #
-# This file file be copied and used freely without restrictions.  It can
+# This file can be copied and used freely without restrictions.  It can
 # be used in projects which are not available under the GNU Public License
 # but which still want to provide support for the GNU gettext functionality.
 # Please note that the actual code is *not* freely available.
--- libstdc++-v3/configure.host.jj	2023-09-11 11:05:47.619726474 +0200
+++ libstdc++-v3/configure.host	2024-03-28 15:41:56.740134644 +0100
@@ -1,7 +1,7 @@ 
 # configure.host
 #
 # This shell script handles all host based configuration for libstdc++.
-# It sets various shell variables based on the the host and the
+# It sets various shell variables based on the host and the
 # configuration options.  You can modify this shell script without needing
 # to rerun autoconf/aclocal/etc.  This file is "sourced" not executed.
 #
--- libvtv/vtv_rts.cc.jj	2024-01-03 12:08:23.803590499 +0100
+++ libvtv/vtv_rts.cc	2024-03-28 15:41:17.621665634 +0100
@@ -1791,7 +1791,7 @@  vtv_fail (const char *msg, void **data_s
               ptr_from_set_handle_handle (*data_set_ptr) :
 	      *data_set_ptr);
   buf_len = strlen (buffer);
-  /*  Send this to to stderr.  */
+  /* Send this to stderr.  */
   write (2, buffer, buf_len);
 
 #ifndef VTV_NO_ABORT
--- libvtv/vtv_fail.cc.jj	2024-01-03 12:08:23.804590485 +0100
+++ libvtv/vtv_fail.cc	2024-03-28 15:41:05.055836203 +0100
@@ -201,7 +201,7 @@  vtv_fail (const char *msg, void **data_s
               ptr_from_set_handle_handle (*data_set_ptr) :
 	      *data_set_ptr);
   buf_len = strlen (buffer);
-  /*  Send this to to stderr.  */
+  /* Send this to stderr.  */
   write (2, buffer, buf_len);
 
   if (!vtv_no_abort)