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 <[email protected]>
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
