libstdc++/4218: Compile fails due to std::min in basic_string.tcc
bjornw@planetarion.com
bjornw@planetarion.com
Tue Sep 4 01:36:00 GMT 2001
>Number: 4218
>Category: libstdc++
>Synopsis: Compile fails due to std::min in basic_string.tcc
>Confidential: no
>Severity: critical
>Priority: medium
>Responsible: unassigned
>State: open
>Class: sw-bug
>Submitter-Id: net
>Arrival-Date: Tue Sep 04 01:36:01 PDT 2001
>Closed-Date:
>Last-Modified:
>Originator: bjornw@planetarion.com
>Release: gcc version 3.1 20010901 (experimental)
>Organization:
>Environment:
redhat-6.2 (all pacthed up june 2001), kernel-2.4.9
>Description:
When compiling a program using string::rfind(), the following code from basic_string.tcc is is incorrect :
basic_string.tcc:630: __pos = std::min(__size - __n ,__pos);
This is resolved into:
__pos = std::((__size - __n) < (__pos) ? (__size-n) : (__pos));
And the compiler choked on __size.
>How-To-Repeat:
>Fix:
__pos = min(__size - __n ,__pos);
Fixes the problem.
>Release-Note:
>Audit-Trail:
>Unformatted:
More information about the Gcc-bugs
mailing list