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  <ja...@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 <drep...@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 <rguent...@suse.de>
SUSE Software Solutions Germany GmbH,
Frankenstrasse 146, 90461 Nuernberg, Germany;
GF: Ivo Totev, Andrew McDonald, Werner Knoblich; (HRB 36809, AG Nuernberg)

Reply via email to