blob: d5748e18edee9f287f5a9ca0f5d2904708017e23 [file] [log] [blame]
Matt Arsenaulte19dc612018-11-13 22:30:35 +00001// RUN: %clang_cc1 -cl-std=CL1.2 -fsyntax-only -verify %s
2
3typedef __attribute__((ext_vector_type(2))) float float2;
4typedef __attribute__((ext_vector_type(4))) float float4;
5typedef __attribute__((ext_vector_type(4))) int int4;
6
7int printf(__constant const char* st, ...) __attribute__((format(printf, 1, 2)));
8
9kernel void format_v4f32(float4 arg)
10{
11 printf("%v4f\n", arg); // expected-no-diagnostics
12}
13
14kernel void format_v4f32_wrong_num_elts(float2 arg)
15{
16 printf("%v4f\n", arg); // expected-no-diagnostics
17}
18
19kernel void vector_precision_modifier_v4f32(float4 arg)
20{
21 printf("%.2v4f\n", arg); // expected-no-diagnostics
22}
23
24// FIXME: This should warn
25kernel void format_missing_num_elts(float4 arg)
26{
27 printf("%vf\n", arg); // expected-no-diagnostics
28}
29
30// FIXME: This should warn
31kernel void vector_precision_modifier_v4i32(int4 arg)
32{
33 printf("%.2v4f\n", arg); // expected-no-diagnostics
34}