public inbox for glibc-bugs@sourceware.org
help / color / mirror / Atom feed
* [Bug libc/5806] New: wrong comment in strlen() and other functions
@ 2008-02-29  0:37 egmont at gmail dot com
  2008-03-02  3:34 ` [Bug libc/5806] " carlos at codesourcery dot com
                   ` (3 more replies)
  0 siblings, 4 replies; 5+ messages in thread
From: egmont at gmail dot com @ 2008-02-29  0:37 UTC (permalink / raw)
  To: glibc-bugs

strlen() and similar functions use some cool magic to determine whether any
bytes of an integer is zero. This magic is explained in a long comment in all
these source files. Part of this comment is:

         1) Is this safe?  Will it catch all the zero bytes?
         Suppose there is a byte with all zeros.  Any carry bits
         propagating from its left will fall into the hole at its
         least significant bit and stop. [...]

"propagating from its left" is wrong, it should be "propagating from its right".

In glibc-2.7 there are 14 files that contain this typo. Luckily the wording and
the formatting of the paragraph is exactly the same everywhere. I don't send a
patch because that might easily get outdated or miss some newly added files.
Rather, please do a combo of grep and sed or whatever similar tools to fix these.

-- 
           Summary: wrong comment in strlen() and other functions
           Product: glibc
           Version: unspecified
            Status: NEW
          Severity: minor
          Priority: P3
         Component: libc
        AssignedTo: drepper at redhat dot com
        ReportedBy: egmont at gmail dot com
                CC: glibc-bugs at sources dot redhat dot com


http://sourceware.org/bugzilla/show_bug.cgi?id=5806

------- You are receiving this mail because: -------
You are on the CC list for the bug, or are watching someone who is.


^ permalink raw reply	[flat|nested] 5+ messages in thread

* [Bug libc/5806] wrong comment in strlen() and other functions
  2008-02-29  0:37 [Bug libc/5806] New: wrong comment in strlen() and other functions egmont at gmail dot com
@ 2008-03-02  3:34 ` carlos at codesourcery dot com
  2008-03-02  8:51 ` egmont at gmail dot com
                   ` (2 subsequent siblings)
  3 siblings, 0 replies; 5+ messages in thread
From: carlos at codesourcery dot com @ 2008-03-02  3:34 UTC (permalink / raw)
  To: glibc-bugs


------- Additional Comments From carlos at codesourcery dot com  2008-03-02 03:33 -------
The comment doesn't match what the code is doing. The comments should all be
removed when BZ #5807 is resolved.

-- 
           What    |Removed                     |Added
----------------------------------------------------------------------------
  BugsThisDependsOn|                            |5807


http://sourceware.org/bugzilla/show_bug.cgi?id=5806

------- You are receiving this mail because: -------
You are on the CC list for the bug, or are watching someone who is.


^ permalink raw reply	[flat|nested] 5+ messages in thread

* [Bug libc/5806] wrong comment in strlen() and other functions
  2008-02-29  0:37 [Bug libc/5806] New: wrong comment in strlen() and other functions egmont at gmail dot com
  2008-03-02  3:34 ` [Bug libc/5806] " carlos at codesourcery dot com
@ 2008-03-02  8:51 ` egmont at gmail dot com
  2008-03-02 15:12 ` carlos at codesourcery dot com
  2009-03-15  8:50 ` drepper at redhat dot com
  3 siblings, 0 replies; 5+ messages in thread
From: egmont at gmail dot com @ 2008-03-02  8:51 UTC (permalink / raw)
  To: glibc-bugs


------- Additional Comments From egmont at gmail dot com  2008-03-02 08:50 -------
Well, the comment does match to what the code is doing now, not in strlen.c but
all the other similar files wherever this comment appears (such as strchr.c just
to mention one.)

No need to fix the comments of course, provided that you change the
implementation in all these fourteen files, not just in strlen.c; and throw out
the old version, not just put inside #if 0. If you keep the old version around,
I recommend to fix the comments because it can be done very easily, and might be
a help to anyone trying to understand that.

The algorithm you linked from bug #5807 is definitely nicer than the current
one, easier to understand, and does exact match with no false positive.


-- 


http://sourceware.org/bugzilla/show_bug.cgi?id=5806

------- You are receiving this mail because: -------
You are on the CC list for the bug, or are watching someone who is.


^ permalink raw reply	[flat|nested] 5+ messages in thread

* [Bug libc/5806] wrong comment in strlen() and other functions
  2008-02-29  0:37 [Bug libc/5806] New: wrong comment in strlen() and other functions egmont at gmail dot com
  2008-03-02  3:34 ` [Bug libc/5806] " carlos at codesourcery dot com
  2008-03-02  8:51 ` egmont at gmail dot com
@ 2008-03-02 15:12 ` carlos at codesourcery dot com
  2009-03-15  8:50 ` drepper at redhat dot com
  3 siblings, 0 replies; 5+ messages in thread
From: carlos at codesourcery dot com @ 2008-03-02 15:12 UTC (permalink / raw)
  To: glibc-bugs


------- Additional Comments From carlos at codesourcery dot com  2008-03-02 15:11 -------
Agreed, all fourteen files should be changed to use a sensible algorithm, and
the old comments should be removed. This issue still depends on resolving #5807
first.

-- 


http://sourceware.org/bugzilla/show_bug.cgi?id=5806

------- You are receiving this mail because: -------
You are on the CC list for the bug, or are watching someone who is.


^ permalink raw reply	[flat|nested] 5+ messages in thread

* [Bug libc/5806] wrong comment in strlen() and other functions
  2008-02-29  0:37 [Bug libc/5806] New: wrong comment in strlen() and other functions egmont at gmail dot com
                   ` (2 preceding siblings ...)
  2008-03-02 15:12 ` carlos at codesourcery dot com
@ 2009-03-15  8:50 ` drepper at redhat dot com
  3 siblings, 0 replies; 5+ messages in thread
From: drepper at redhat dot com @ 2009-03-15  8:50 UTC (permalink / raw)
  To: glibc-bugs



-- 
Bug 5806 depends on bug 5807, which changed state.

Bug 5807 Summary: strlen() not effective
http://sourceware.org/bugzilla/show_bug.cgi?id=5807

           What    |Old Value                   |New Value
----------------------------------------------------------------------------
             Status|ASSIGNED                    |RESOLVED
         Resolution|                            |FIXED

http://sourceware.org/bugzilla/show_bug.cgi?id=5806

------- You are receiving this mail because: -------
You are on the CC list for the bug, or are watching someone who is.


^ permalink raw reply	[flat|nested] 5+ messages in thread

end of thread, other threads:[~2009-03-15  8:50 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2008-02-29  0:37 [Bug libc/5806] New: wrong comment in strlen() and other functions egmont at gmail dot com
2008-03-02  3:34 ` [Bug libc/5806] " carlos at codesourcery dot com
2008-03-02  8:51 ` egmont at gmail dot com
2008-03-02 15:12 ` carlos at codesourcery dot com
2009-03-15  8:50 ` drepper at redhat dot com

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).