/* { dg-do compile } */ /* { dg-options "-std=gnu++11" } */ typedef struct {} _v_signed_char; typedef struct { } _v_unsigned_char; typedef struct { } _v_signed_short; typedef struct { } _v_unsigned_short; typedef struct { } _v_signed_int; typedef struct { } _v_unsigned_int; typedef struct { } _v_signed_long_long; typedef struct { } _v_unsigned_long_long; typedef struct { } _v_bool_char; typedef struct { } _v_bool_short; typedef struct { } _v_bool_int; typedef struct { } _v_bool_long_long; typedef struct { } _v_double; signed foo(_v_signed_char, _v_signed_char) { } signed foo(_v_signed_char, _v_bool_char) { } signed foo(_v_bool_char, _v_bool_char) { } signed foo(_v_bool_char, _v_signed_char) { } signed foo(_v_bool_char, _v_unsigned_char) { } signed foo(_v_unsigned_char, _v_unsigned_char) { } signed foo(_v_unsigned_char, _v_bool_char) { } signed foo(_v_signed_short, _v_signed_short) { } signed foo(_v_signed_short, _v_bool_short) { } signed foo(_v_bool_short, _v_bool_short) { } signed foo(_v_bool_short, _v_signed_short) { } signed foo(_v_bool_short, _v_unsigned_short) { } signed foo(_v_unsigned_short, _v_unsigned_short) { } signed foo(_v_unsigned_short, _v_bool_short) { } signed foo(_v_signed_int, _v_signed_int) { } signed foo(_v_signed_int, _v_bool_int) { } signed foo(_v_bool_int, _v_bool_int) { } signed foo(_v_bool_int, _v_signed_int) { } signed foo(_v_bool_int, _v_unsigned_int) { } signed foo(_v_unsigned_int, _v_unsigned_int) { } signed foo(_v_unsigned_int, _v_bool_int) { } signed foo(_v_signed_long_long, _v_signed_long_long) { } signed foo(_v_signed_long_long, _v_bool_long_long) { } signed foo(_v_bool_long_long, _v_bool_long_long) { } signed foo(_v_bool_long_long, _v_signed_long_long) { } signed foo(_v_bool_long_long, _v_unsigned_long_long) { } signed foo(_v_unsigned_long_long, _v_unsigned_long_long) { } signed foo(_v_unsigned_long_long, _v_bool_long_long) { } signed foo(_v_double, _v_double) { } void test_builtin_sigs() { _v_unsigned_char u; _v_signed_char s; foo(u, s); /* { dg-error "" "" } */ foo(u, s); /* { dg-error "" "" } */ foo(u, s); /* { dg-error "" "" } */ foo(u, s); /* { dg-error "" "" } */ foo(u, s); /* { dg-error "" "" } */ foo(u, s); /* { dg-error "" "" } */ foo(u, s); /* { dg-error "" "" } */ foo(u, s); /* { dg-error "" "" } */ foo(u, s); /* { dg-error "" "" } */ foo(u, s); /* { dg-error "" "" } */ foo(u, s); /* { dg-error "" "" } */ foo(u, s); /* { dg-error "" "" } */ foo(u, s); /* { dg-error "" "" } */ foo(u, s); /* { dg-error "" "" } */ foo(u, s); /* { dg-error "" "" } */ foo(u, s); /* { dg-error "" "" } */ foo(u, s); /* { dg-error "" "" } */ foo(u, s); /* { dg-error "" "" } */ foo(u, s); /* { dg-error "" "" } */ foo(u, s); /* { dg-error "" "" } */ foo(u, s); /* { dg-error "" "" } */ foo(u, s); /* { dg-error "" "" } */ foo(u, s); /* { dg-error "" "" } */ foo(u, s); /* { dg-error "" "" } */ foo(u, s); /* { dg-error "" "" } */ foo(u, s); /* { dg-error "" "" } */ foo(u, s); /* { dg-error "" "" } */ foo(u, s); /* { dg-error "" "" } */ foo(u, s); /* { dg-error "" "" } */ foo(u, s); /* { dg-error "" "" } */ foo(u, s); /* { dg-error "" "" } */ foo(u, s); /* { dg-error "" "" } */ foo(u, s); /* { dg-error "" "" } */ foo(u, s); /* { dg-error "" "" } */ foo(u, s); /* { dg-error "" "" } */ foo(u, s); /* { dg-error "" "" } */ foo(u, s); /* { dg-error "" "" } */ foo(u, s); /* { dg-error "" "" } */ foo(u, s); /* { dg-error "" "" } */ foo(u, s); /* { dg-error "" "" } */ foo(u, s); /* { dg-error "" "" } */ foo(u, s); /* { dg-error "" "" } */ foo(u, s); /* { dg-error "" "" } */ foo(u, s); /* { dg-error "" "" } */ foo(u, s); /* { dg-error "" "" } */ foo(u, s); /* { dg-error "" "" } */ foo(u, s); /* { dg-error "" "" } */ foo(u, s); /* { dg-error "" "" } */ foo(u, s); /* { dg-error "" "" } */ foo(u, s); /* { dg-error "" "" } */ foo(u, s); /* { dg-error "" "" } */ foo(u, s); /* { dg-error "" "" } */ foo(u, s); /* { dg-error "" "" } */ /* no more errors are processed after here */ foo(u, s); /* { dg-error "" "" } */ foo(u, s); /* { dg-error "" "" } */ foo(u, s); /* { dg-error "" "" } */ foo(u, s); /* { dg-error "" "" } */ }