Skip to content

[BUG] error: passing '__v2si' (aka 'int') to parameter of incompatible type '__attribute__((__vector_size__(2 * sizeof(int)))) int' (vector of 2 'int' values) #127792

@rvandermeulen

Description

@rvandermeulen

Ever since Microsoft published an updated Windows 11 26000 SDK last week, I see this build error when trying to build our project:

In file included from C:/Users/Ryan/repos/mozilla/gfx/cairo/cairo/src/win32/cairo-win32-display-surface.c:56:
In file included from C:/PROGRA~2/WI3CF2~1/10/Include/10.0.26100.0/ucrt\wchar.h:29:
In file included from C:\Users\Ryan\.mozbuild\clang\lib\clang\19\include\intrin.h:22:
In file included from C:\Users\Ryan\.mozbuild\clang\lib\clang\19\include\x86intrin.h:15:
In file included from C:\Users\Ryan\.mozbuild\clang\lib\clang\19\include\immintrin.h:20:
C:\Users\Ryan\.mozbuild\clang\lib\clang\19\include\mmintrin.h(73,40): error: passing '__v2si' (aka 'int') to parameter of incompatible type '__attribute__((__vector_size__(2 * sizeof(int)))) int' (vector of 2 'int' values)
   73 |     return __builtin_ia32_vec_ext_v2si((__v2si)__m, 0);
      |                                        ^~~~~~~~~~~
C:\Users\Ryan\.mozbuild\clang\lib\clang\19\include\mmintrin.h(130,43): error: passing '__v4hi' (aka 'short') to parameter of incompatible type '__attribute__((__vector_size__(4 * sizeof(short)))) short' (vector of 4 'short' values)
  130 |     return (__m64)__builtin_ia32_packsswb((__v4hi)__m1, (__v4hi)__m2);
      |                                           ^~~~~~~~~~~~
C:\Users\Ryan\.mozbuild\clang\lib\clang\19\include\mmintrin.h(155,43): error: passing '__v2si' (aka 'int') to parameter of incompatible type '__attribute__((__vector_size__(2 * sizeof(int)))) int' (vector of 2 'int' values)
  155 |     return (__m64)__builtin_ia32_packssdw((__v2si)__m1, (__v2si)__m2);
      |                                           ^~~~~~~~~~~~
C:\Users\Ryan\.mozbuild\clang\lib\clang\19\include\mmintrin.h(180,43): error: passing '__v4hi' (aka 'short') to parameter of incompatible type '__attribute__((__vector_size__(4 * sizeof(short)))) short' (vector of 4 'short' values)
  180 |     return (__m64)__builtin_ia32_packuswb((__v4hi)__m1, (__v4hi)__m2);
      |                                           ^~~~~~~~~~~~
C:\Users\Ryan\.mozbuild\clang\lib\clang\19\include\mmintrin.h(207,44): error: passing '__v8qi' (aka 'char') to parameter of incompatible type '__attribute__((__vector_size__(8 * sizeof(char)))) char' (vector of 8 'char' values)
  207 |     return (__m64)__builtin_ia32_punpckhbw((__v8qi)__m1, (__v8qi)__m2);
      |                                            ^~~~~~~~~~~~
C:\Users\Ryan\.mozbuild\clang\lib\clang\19\include\mmintrin.h(230,44): error: passing '__v4hi' (aka 'short') to parameter of incompatible type '__attribute__((__vector_size__(4 * sizeof(short)))) short' (vector of 4 'short' values)
  230 |     return (__m64)__builtin_ia32_punpckhwd((__v4hi)__m1, (__v4hi)__m2);
      |                                            ^~~~~~~~~~~~
C:\Users\Ryan\.mozbuild\clang\lib\clang\19\include\mmintrin.h(251,44): error: passing '__v2si' (aka 'int') to parameter of incompatible type '__attribute__((__vector_size__(2 * sizeof(int)))) int' (vector of 2 'int' values)
  251 |     return (__m64)__builtin_ia32_punpckhdq((__v2si)__m1, (__v2si)__m2);
      |                                            ^~~~~~~~~~~~
C:\Users\Ryan\.mozbuild\clang\lib\clang\19\include\mmintrin.h(278,44): error: passing '__v8qi' (aka 'char') to parameter of incompatible type '__attribute__((__vector_size__(8 * sizeof(char)))) char' (vector of 8 'char' values)
  278 |     return (__m64)__builtin_ia32_punpcklbw((__v8qi)__m1, (__v8qi)__m2);
      |                                            ^~~~~~~~~~~~
C:\Users\Ryan\.mozbuild\clang\lib\clang\19\include\mmintrin.h(301,44): error: passing '__v4hi' (aka 'short') to parameter of incompatible type '__attribute__((__vector_size__(4 * sizeof(short)))) short' (vector of 4 'short' values)
  301 |     return (__m64)__builtin_ia32_punpcklwd((__v4hi)__m1, (__v4hi)__m2);
      |                                            ^~~~~~~~~~~~
C:\Users\Ryan\.mozbuild\clang\lib\clang\19\include\mmintrin.h(322,44): error: passing '__v2si' (aka 'int') to parameter of incompatible type '__attribute__((__vector_size__(2 * sizeof(int)))) int' (vector of 2 'int' values)
  322 |     return (__m64)__builtin_ia32_punpckldq((__v2si)__m1, (__v2si)__m2);
      |                                            ^~~~~~~~~~~~
C:\Users\Ryan\.mozbuild\clang\lib\clang\19\include\mmintrin.h(343,40): error: passing '__v8qi' (aka 'char') to parameter of incompatible type '__attribute__((__vector_size__(8 * sizeof(char)))) char' (vector of 8 'char' values)
  343 |     return (__m64)__builtin_ia32_paddb((__v8qi)__m1, (__v8qi)__m2);
      |                                        ^~~~~~~~~~~~
C:\Users\Ryan\.mozbuild\clang\lib\clang\19\include\mmintrin.h(364,40): error: passing '__v4hi' (aka 'short') to parameter of incompatible type '__attribute__((__vector_size__(4 * sizeof(short)))) short' (vector of 4 'short' values)
  364 |     return (__m64)__builtin_ia32_paddw((__v4hi)__m1, (__v4hi)__m2);
      |                                        ^~~~~~~~~~~~
C:\Users\Ryan\.mozbuild\clang\lib\clang\19\include\mmintrin.h(385,40): error: passing '__v2si' (aka 'int') to parameter of incompatible type '__attribute__((__vector_size__(2 * sizeof(int)))) int' (vector of 2 'int' values)
  385 |     return (__m64)__builtin_ia32_paddd((__v2si)__m1, (__v2si)__m2);
      |                                        ^~~~~~~~~~~~
C:\Users\Ryan\.mozbuild\clang\lib\clang\19\include\mmintrin.h(409,41): error: passing '__v8qi' (aka 'char') to parameter of incompatible type '__attribute__((__vector_size__(8 * sizeof(char)))) char' (vector of 8 'char' values)
  409 |     return (__m64)__builtin_ia32_paddsb((__v8qi)__m1, (__v8qi)__m2);
      |                                         ^~~~~~~~~~~~
C:\Users\Ryan\.mozbuild\clang\lib\clang\19\include\mmintrin.h(433,41): error: passing '__v4hi' (aka 'short') to parameter of incompatible type '__attribute__((__vector_size__(4 * sizeof(short)))) short' (vector of 4 'short' values)
  433 |     return (__m64)__builtin_ia32_paddsw((__v4hi)__m1, (__v4hi)__m2);
      |                                         ^~~~~~~~~~~~
C:\Users\Ryan\.mozbuild\clang\lib\clang\19\include\mmintrin.h(456,42): error: passing '__v8qi' (aka 'char') to parameter of incompatible type '__attribute__((__vector_size__(8 * sizeof(char)))) char' (vector of 8 'char' values)
  456 |     return (__m64)__builtin_ia32_paddusb((__v8qi)__m1, (__v8qi)__m2);
      |                                          ^~~~~~~~~~~~
C:\Users\Ryan\.mozbuild\clang\lib\clang\19\include\mmintrin.h(479,42): error: passing '__v4hi' (aka 'short') to parameter of incompatible type '__attribute__((__vector_size__(4 * sizeof(short)))) short' (vector of 4 'short' values)
  479 |     return (__m64)__builtin_ia32_paddusw((__v4hi)__m1, (__v4hi)__m2);
      |                                          ^~~~~~~~~~~~
C:\Users\Ryan\.mozbuild\clang\lib\clang\19\include\mmintrin.h(500,40): error: passing '__v8qi' (aka 'char') to parameter of incompatible type '__attribute__((__vector_size__(8 * sizeof(char)))) char' (vector of 8 'char' values)
  500 |     return (__m64)__builtin_ia32_psubb((__v8qi)__m1, (__v8qi)__m2);
      |                                        ^~~~~~~~~~~~
C:\Users\Ryan\.mozbuild\clang\lib\clang\19\include\mmintrin.h(521,40): error: passing '__v4hi' (aka 'short') to parameter of incompatible type '__attribute__((__vector_size__(4 * sizeof(short)))) short' (vector of 4 'short' values)
  521 |     return (__m64)__builtin_ia32_psubw((__v4hi)__m1, (__v4hi)__m2);
      |                                        ^~~~~~~~~~~~
fatal error: too many errors emitted, stopping now [-ferror-limit=]

This looks potentially like it may have a similar cause to #95133 (which we were also hitting as Skia is a part of our project). Also looks maybe related to #91415 filed previously?

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions