1  /* { dg-do compile } */
       2  
       3  #include <arm_sve.h>
       4  
       5  #pragma GCC target ("arch=armv8.2-a+sve2")
       6  
       7  void
       8  f1 (svbool_t pg, svint8_t s8, svuint8_t u8,
       9      svint16_t s16, svuint16_t u16,
      10      svint32_t s32, svuint32_t u32,
      11      svint64_t s64, svuint64_t u64,
      12      svfloat32_t f32)
      13  {
      14    svqxtnb (); /* { dg-error {too few arguments to function 'svqxtnb'} } */
      15    svqxtnb (u16, u16); /* { dg-error {too many arguments to function 'svqxtnb'} } */
      16    svqxtnb (pg); /* { dg-error {'svqxtnb' has no form that takes 'svbool_t' arguments} } */
      17    svqxtnb (u8); /* { dg-error {'svqxtnb' has no form that takes 'svuint8_t' arguments} } */
      18    svqxtnb (s8); /* { dg-error {'svqxtnb' has no form that takes 'svint8_t' arguments} } */
      19    svqxtnb (u16);
      20    svqxtnb (s16);
      21    svqxtnb (u32);
      22    svqxtnb (s32);
      23    svqxtnb (u64);
      24    svqxtnb (s64);
      25    svqxtnb (f32); /* { dg-error {'svqxtnb' has no form that takes 'svfloat32_t' arguments} } */
      26    svqxtnb (1); /* { dg-error {passing 'int' to argument 1 of 'svqxtnb', which expects an SVE vector type} } */
      27  }