From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 18355 invoked by alias); 7 Sep 2002 17:26:01 -0000 Mailing-List: contact gcc-prs-help@gcc.gnu.org; run by ezmlm Precedence: bulk List-Archive: List-Post: List-Help: Sender: gcc-prs-owner@gcc.gnu.org Received: (qmail 18336 invoked by uid 71); 7 Sep 2002 17:26:01 -0000 Resent-Date: 7 Sep 2002 17:26:01 -0000 Resent-Message-ID: <20020907172601.18335.qmail@sources.redhat.com> Resent-From: gcc-gnats@gcc.gnu.org (GNATS Filer) Resent-Cc: gcc-prs@gcc.gnu.org, gcc-bugs@gcc.gnu.org Resent-Reply-To: gcc-gnats@gcc.gnu.org, Peter Schmid Received: (qmail 16746 invoked from network); 7 Sep 2002 17:16:57 -0000 Received: from unknown (HELO snake.iap.physik.tu-darmstadt.de) (130.83.4.87) by sources.redhat.com with SMTP; 7 Sep 2002 17:16:57 -0000 Received: (from schmid@localhost) by snake.iap.physik.tu-darmstadt.de (8.9.3/8.9.3/SuSE Linux 8.9.3-0.1) id TAA07708; Sat, 7 Sep 2002 19:16:56 +0200 Message-Id: <200209071716.TAA07708@snake.iap.physik.tu-darmstadt.de> Date: Sat, 07 Sep 2002 10:26:00 -0000 From: Peter Schmid To: gcc-gnats@gcc.gnu.org X-Send-Pr-Version: 3.113 Subject: libstdc++/7851: Problems with numeric_limits::min() and max() X-SW-Source: 2002-09/txt/msg00103.txt.bz2 List-Id: >Number: 7851 >Category: libstdc++ >Synopsis: Problems with numeric_limits::min() and max() >Confidential: no >Severity: serious >Priority: medium >Responsible: unassigned >State: open >Class: sw-bug >Submitter-Id: net >Arrival-Date: Sat Sep 07 10:26:01 PDT 2002 >Closed-Date: >Last-Modified: >Originator: Peter Schmid >Release: 3.3 20020905 (experimental) >Organization: TU Darmstadt >Environment: System: Linux kiste 2.4.18 #8 Sat Mar 9 15:33:15 CET 2002 i686 unknown Architecture: i686 GNU ld version 2.13.90.0.4 20020814 host: i686-pc-linux-gnu build: i686-pc-linux-gnu target: i686-pc-linux-gnu configured with: ../gcc/configure --enable-shared --disable-nls --enable-threads=posix --enable-languages=c,c++,f77,objc --enable-__cxa_atexit >Description: The values obtained for the smallest wchar_t from the numeric_limits facility and the wchar.h interface (WCHAR_MIN) differ. The values WCHAR_MAX and numeric_limits::max() are not the same, either. >How-To-Repeat: source code wlimit.C #include #include #include int main() { wchar_t wmin = WCHAR_MIN; wchar_t limits_wmin = std::numeric_limits::min(); std::cout << "Are WCHAR_MIN:" << wmin << " and numeric_limits::min():" << limits_wmin << " the same? "; (wmin == limits_wmin) ? (std::cout << "yes\n") : (std::cout << "no\n"); wchar_t wmax = WCHAR_MAX; wchar_t limits_wmax = std::numeric_limits::max(); std::cout << "Are WCHAR_MAX:" << wmax << " and numeric_limits::max():" << limits_wmax << " the same? "; (wmin == limits_wmax) ? (std::cout << "yes\n") : (std::cout << "no\n"); } Compiling wlimit.C g++ -v -o wlimit wlimit.C -W -Wall Reading specs from /usr/local/lib/gcc-lib/i686-pc-linux-gnu/3.3/specs Configured with: ../gcc/configure --enable-shared --disable-nls --enable-threads=posix --enable-languages=c,c++,f77,objc --enable-__cxa_atexit Thread model: posix gcc version 3.3 20020905 (experimental) /usr/local/lib/gcc-lib/i686-pc-linux-gnu/3.3/cc1plus -quiet -v -D__GNUC__=3 -D__GNUC_MINOR__=3 -D__GNUC_PATCHLEVEL__=0 -D_GNU_SOURCE wlimit.C -D__GNUG__=3 -quiet -dumpbase wlimit.C -auxbase wlimit -W -Wall -version -o /tmp/ccxQzMrh.s GNU C++ version 3.3 20020905 (experimental) (i686-pc-linux-gnu) compiled by GNU C version 3.3 20020905 (experimental). ignoring nonexistent directory "NONE/include" ignoring nonexistent directory "/usr/local/i686-pc-linux-gnu/include" #include "..." search starts here: #include <...> search starts here: /usr/local/include/c++/3.3 /usr/local/include/c++/3.3/i686-pc-linux-gnu /usr/local/include/c++/3.3/backward /usr/local/include /usr/local/lib/gcc-lib/i686-pc-linux-gnu/3.3/include /usr/include End of search list. /usr/local/lib/gcc-lib/i686-pc-linux-gnu/3.3/../../../../i686-pc-linux-gnu/bin/as -V -Qy -o /tmp/cc8x3LiL.o /tmp/ccxQzMrh.s GNU assembler version 2.13.90.0.4 (i686-pc-linux-gnu) using BFD version 2.13.90.0.4 20020814 /usr/local/lib/gcc-lib/i686-pc-linux-gnu/3.3/collect2 --eh-frame-hdr -m elf_i386 -dynamic-linker /lib/ld-linux.so.2 -o wlimit /usr/lib/crt1.o /usr/lib/crti.o /usr/local/lib/gcc-lib/i686-pc-linux-gnu/3.3/crtbegin.o -L/usr/local/lib/gcc-lib/i686-pc-linux-gnu/3.3 -L/usr/local/lib/gcc-lib/i686-pc-linux-gnu/3.3/../../../../i686-pc-linux-gnu/lib -L/usr/local/lib/gcc-lib/i686-pc-linux-gnu/3.3/../../.. /tmp/cc8x3LiL.o -lstdc++ -lm -lgcc_s -lgcc -lc -lgcc_s -lgcc /usr/local/lib/gcc-lib/i686-pc-linux-gnu/3.3/crtend.o /usr/lib/crtn.o Running wlimit ./wlimit Are WCHAR_MIN:-2147483648 and numeric_limits::min():0 the same? no Are WCHAR_MAX:2147483647 and numeric_limits::max():-1 the same? no >Fix: >Release-Note: >Audit-Trail: >Unformatted: >Severity: serious