From: Uros Bizjak Date: Wed, 29 Jul 2015 17:45:07 +0000 (+0200) Subject: re PR libfortran/66650 (libgfortran: warning: left shift of negative value [-Wshift... X-Git-Tag: releases/gcc-4.9.4~673 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=4048fc0165c3455c65c853a787a3794cb48c6147;p=thirdparty%2Fgcc.git re PR libfortran/66650 (libgfortran: warning: left shift of negative value [-Wshift-negative-value]) PR libgfortran/66650 * libgfortran.h (GFC_DTYPE_SIZE_MASK): Rewrite to avoid "left shift of negative value" warning. From-SVN: r226360 --- diff --git a/libgfortran/ChangeLog b/libgfortran/ChangeLog index 7493f84ea5be..3f2ef6806deb 100644 --- a/libgfortran/ChangeLog +++ b/libgfortran/ChangeLog @@ -1,3 +1,9 @@ +2015-07-29 Uros Bizjak + + PR libgfortran/66650 + * libgfortran.h (GFC_DTYPE_SIZE_MASK): Rewrite to avoid + "left shift of negative value" warning. + 2015-06-26 Release Manager * GCC 4.9.3 released. diff --git a/libgfortran/libgfortran.h b/libgfortran/libgfortran.h index e01d215ddd82..0d2e6488df28 100644 --- a/libgfortran/libgfortran.h +++ b/libgfortran/libgfortran.h @@ -415,8 +415,7 @@ typedef GFC_ARRAY_DESCRIPTOR (GFC_MAX_DIMENSIONS, GFC_LOGICAL_16) gfc_array_l16; /* Macros to get both the size and the type with a single masking operation */ -#define GFC_DTYPE_SIZE_MASK \ - ((~((index_type) 0) >> GFC_DTYPE_SIZE_SHIFT) << GFC_DTYPE_SIZE_SHIFT) +#define GFC_DTYPE_SIZE_MASK (-((index_type) 1 << GFC_DTYPE_SIZE_SHIFT)) #define GFC_DTYPE_TYPE_SIZE_MASK (GFC_DTYPE_SIZE_MASK | GFC_DTYPE_TYPE_MASK) #define GFC_DTYPE_TYPE_SIZE(desc) ((desc)->dtype & GFC_DTYPE_TYPE_SIZE_MASK)