[Bug c++/37004] [C++ only] Wconversion warns for short y = 0x7fff; short z = (short) x & y;

manu at gcc dot gnu dot org gcc-bugzilla@gcc.gnu.org
Sun Oct 19 22:55:00 GMT 2008



------- Comment #4 from manu at gcc dot gnu dot org  2008-10-19 22:54 -------
Subject: Bug 37004

Author: manu
Date: Sun Oct 19 22:53:01 2008
New Revision: 141233

URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=141233
Log:
2008-10-20  Manuel López-Ibáñez  <manu@gcc.gnu.org>

        PR c++/37004
cp/
        * typeck.c (cp_common_type): New. The same as
        type_after_usual_arithmetic_conversions but without promotions.
        (type_after_usual_arithmetic_conversions): Do the promotions and
        call cp_common_type.
        (common_type): Make it behave like the C version of this
        function. Do not handle pointer types.
        (common_pointer_type): Move handling of pointer types from
        common_type to here.
        (cp_build_binary_op): Use common_pointer_type instead of
        common_type in call to pointer_diff.
        Use cp_common_type instead of common_type.
        * cp-tree.h (common_pointer_type): Declare.
testsuite/
        * g++.dg/warn/Wconversion-pr34389.C: Remove XFAIL.

Modified:
    trunk/gcc/cp/ChangeLog
    trunk/gcc/cp/cp-tree.h
    trunk/gcc/cp/typeck.c
    trunk/gcc/testsuite/ChangeLog
    trunk/gcc/testsuite/g++.dg/warn/Wconversion-pr34389.C


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=37004



More information about the Gcc-bugs mailing list