https://gcc.gnu.org/bugzilla/show_bug.cgi?id=96608

            Bug ID: 96608
           Summary: Build failure due to cast to type long on MinGW
           Product: gcc
           Version: 11.0
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: analyzer
          Assignee: dmalcolm at gcc dot gnu.org
          Reporter: markus.boeck02 at gmail dot com
  Target Milestone: ---

Current trunk (revision 808f4dfeb3a95f50f15e71148e5c1067f90a126d) fails when
using the MinGW target due to a few casts to the type long which is 32 bit on
Windows. Following compiler errors appear:

In file included from ../../gcc/analyzer/checker-path.cc:51:
../../gcc/analyzer/store.h: In member function 'hashval_t
ana::symbolic_binding::hash() const':
../../gcc/analyzer/store.h:271:41: error: cast from 'const ana::region*' to
'long int' loses precision [-fpermissive]
  271 |     return (binding_key::impl_hash () ^ (long)m_region);
      |                                         ^~~~~~~~~~~~~~

With the same error appearing roughly 10 times through the code base.
Compiler used was GCC 10.2.1.

Compilation command:
x86_64-w64-mingw32-g++-10  -fno-PIE -c   -fdebug-prefix-map=/mnt/c=C: -g
-march=nehalem -O3 -I/mnt/c/GCC-Build/NewestLinux/Libraries/include -DIN_GCC 
-DCROSS_DIRECTORY_STRUCTURE   -fno-exceptions -fno-rtti
-fasynchronous-unwind-tables -W -Wall -Wno-narrowing -Wwrite-strings
-Wcast-qual -Wno-error=format-diag  -fno-common  -DHAVE_CONFIG_H -I. -Ianalyzer
-I../../gcc -I../../gcc/analyzer -I../../gcc/../include
-I../../gcc/../libcpp/include
-I/mnt/c/GCC-Build-Array/gcc/build-target-i686/./gmp
-I/mnt/c/GCC-Build-Array/gcc/gmp
-I/mnt/c/GCC-Build-Array/gcc/build-target-i686/./mpfr/src
-I/mnt/c/GCC-Build-Array/gcc/mpfr/src -I/mnt/c/GCC-Build-Array/gcc/mpc/src 
-I../../gcc/../libdecnumber -I../../gcc/../libdecnumber/bid -I../libdecnumber
-I../../gcc/../libbacktrace
-I/mnt/c/GCC-Build-Array/gcc/build-target-i686/./isl/include
-I/mnt/c/GCC-Build-Array/gcc/isl/include
-I/mnt/c/GCC-Build/NewestLinux/Libraries/include -o analyzer/checker-path.o -MT
analyzer/checker-path.o -MMD -MP -MF analyzer/.deps/checker-path.TPo
../../gcc/analyzer/checker-path.cc

Reply via email to