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

Richard Biener <rguenth at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
           Keywords|                            |diagnostic

--- Comment #2 from Richard Biener <rguenth at gcc dot gnu.org> ---
So the vec_splat_* functions are not properly prototyped?  Because

void bar (signed char);
void foo() {
      signed char cs0 = 0x100;
      bar (0x100);
}

> gcc-8 t.c -S
t.c: In function ‘foo’:
t.c:3:25: warning: overflow in conversion from ‘int’ to ‘signed char’ changes
value from ‘256’ to ‘0’ [-Woverflow]
       signed char cs0 = 0x100;
                         ^~~~~
t.c:4:12: warning: overflow in conversion from ‘int’ to ‘signed char’ changes
value from ‘256’ to ‘0’ [-Woverflow]
       bar (0x100);
            ^~~~~

so likely they have promoted (int) argument types?  (ugh, lots of macros in
altivec.h)

Reply via email to