[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[bug #66078] [PATCH] [refer] typo in the array element comparison in "re
From: |
G. Branden Robinson |
Subject: |
[bug #66078] [PATCH] [refer] typo in the array element comparison in "ref.cpp" |
Date: |
Thu, 17 Oct 2024 20:44:42 -0400 (EDT) |
Update of bug #66078 (group groff):
Status: In Progress => Fixed
Open/Closed: Open => Closed
Planned Release: None => 1.24.0
Summary: [PATCH] [refer] Typo in the array elements
comparison in src/preproc/refer/ref.cpp => [PATCH] [refer] typo in the array
element comparison in "ref.cpp"
_______________________________________________________
Follow-up Comment #2:
commit 6483156146591c986948149ee55beacfd937bb12
Author: Lukas Javorsky <ljavorsk@redhat.com>
Date: Mon Aug 12 14:38:00 2024 +0200
[refer]: Fix Savannah #66078 (array comp thinko).
* src/preproc/refer/ref.cpp (same_reference): Fix array comparison
warning by comparing elements individually.
Fixes <https://savannah.gnu.org/bugs/?66078>.
[One such warning is "comparison between two arrays is deprecated in
C++20". While groff uses C++98, if the compiler were to expand the
array reference into a loop on its own, then it was blowing up an O(n)
procedure to O(n^2). And if it didn't do that, but translated the
expressions effectively to `r1.field_index[0] != r2.field_index[0]`,
comparing them `i` times, then it's an outright logic error. Problem
dates back to groff 1.02 (June 1991), and perhaps earlier. --GBR]
-verbatim0
_______________________________________________________
Reply to this item at:
<https://savannah.gnu.org/bugs/?66078>
_______________________________________________
Message sent via Savannah
https://savannah.gnu.org/
signature.asc
Description: PGP signature