[MacPorts] #59637: babl @0.1.72+universal: error: initializing '__m128i' (vector of 2 'long long' values) with an expression of incompatible type 'int'

MacPorts noreply at macports.org
Mon Nov 11 21:28:58 UTC 2019


#59637: babl @0.1.72+universal: error: initializing '__m128i' (vector of 2 'long
long' values) with an expression of incompatible type 'int'
-------------------------+----------------------
  Reporter:  ryandesign  |      Owner:  dbevans
      Type:  defect      |     Status:  assigned
  Priority:  Normal      |  Milestone:
 Component:  ports       |    Version:  2.6.2
Resolution:              |   Keywords:
      Port:  babl        |
-------------------------+----------------------

Comment (by dbevans):

 This problem seems to be similar to the (non universal) build failure on
 10.10.



 {{{
 FAILED: extensions/20ef773@@sse-half at sha/sse-half.c.o
 /usr/bin/clang -Iextensions/20ef773@@sse-half at sha -Iextensions
 -I../babl-0.1.72/extensions -I. -I../babl-0.1.72/ -Ibabl
 -I../babl-0.1.72/babl -I/opt/local/include -Xclang -fcolor-diagnostics
 -pipe -Wall -Winvalid-pch -g -Ofast -Wdeclaration-after-statement -Winit-
 self -Wmissing-declarations -Wmissing-prototypes -Wold-style-definition
 -Wpointer-arith -mmmx -msse -mfpmath=sse -Os -arch x86_64 -msse4.1 -mf16c
 -MD -MQ 'extensions/20ef773@@sse-half at sha/sse-half.c.o' -MF
 'extensions/20ef773@@sse-half at sha/sse-half.c.o.d' -o 'extensions/20ef773
 @@sse-half at sha/sse-half.c.o' -c ../babl-0.1.72/extensions/sse-half.c
 ../babl-0.1.72/extensions/sse-half.c:49:32: warning: implicit declaration
 of function '_mm_cvtph_ps' is invalid in C99 [-Wimplicit-function-
 declaration]
       __v4sf out_val = (__v4sf)_mm_cvtph_ps(in_val);
                                ^
 ../babl-0.1.72/extensions/sse-half.c:49:24: error: invalid conversion
 between vector type '__v4sf' (vector of 4 'float' values) and integer type
 'int' of different size
       __v4sf out_val = (__v4sf)_mm_cvtph_ps(in_val);
                        ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
 ../babl-0.1.72/extensions/sse-half.c:60:24: error: invalid conversion
 between vector type '__v4sf' (vector of 4 'float' values) and integer type
 'int' of different size
       __v4sf out_val = (__v4sf)_mm_cvtph_ps(in_val);
                        ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
 ../babl-0.1.72/extensions/sse-half.c:110:25: warning: implicit declaration
 of function '_mm_cvtps_ph' is invalid in C99 [-Wimplicit-function-
 declaration]
       __m128i out_val = _mm_cvtps_ph(in_val, _MM_FROUND_TO_NEAREST_INT |
 _MM_FROUND_NO_EXC);
                         ^
 ../babl-0.1.72/extensions/sse-half.c:110:15: error: initializing '__m128i'
 (vector of 2 'long long' values) with an expression of incompatible type
 'int'
       __m128i out_val = _mm_cvtps_ph(in_val, _MM_FROUND_TO_NEAREST_INT |
 _MM_FROUND_NO_EXC);
               ^
 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 ../babl-0.1.72/extensions/sse-half.c:121:15: error: initializing '__m128i'
 (vector of 2 'long long' values) with an expression of incompatible type
 'int'
       __m128i out_val = _mm_cvtps_ph(in_val, _MM_FROUND_TO_NEAREST_INT |
 _MM_FROUND_NO_EXC);

 }}}
 Looks like, specifically, the sse-half babl extension is using newer SSE
 compiler instructions that are not recognized on older compilers. A
 similar problem was found in graphene.  Trying a tentative fix for 10.10
 (https://github.com/macports/macports-
 ports/commit/2071cbdb2d77350462172f62bddf68f6e380aaed) and looking into
 this in more detail.

 @ryandesign:  on which platform, compiler did your reported errors appear?

-- 
Ticket URL: <https://trac.macports.org/ticket/59637#comment:3>
MacPorts <https://www.macports.org/>
Ports system for macOS


More information about the macports-tickets mailing list