[PATCH] D55023: OpenCL: Improve vector printf warnings

Anastasia Stulova via Phabricator via cfe-commits cfe-commits at lists.llvm.org
Thu Nov 29 08:52:52 PST 2018


Anastasia added inline comments.


================
Comment at: test/SemaOpenCL/printf-format-strings.cl:65
+{
+    printf("%v4f\n", arg); // expected-warning {{format specifies type 'double __attribute__((ext_vector_type(4)))' but the argument has type 'float2' (vector of 2 'float' values)}}
 }
----------------
arsenm wrote:
> arsenm wrote:
> > arsenm wrote:
> > > Anastasia wrote:
> > > > So there is no way to print vector of float? What will happen on architectures that don't support doubles?
> > > > 
> > > > I guess it's the same for printf in general with the float type?
> > > There is, it's converted to a vector of doubles. This case warns because the element count mismatches
> > The conversion is to float if doubles aren't supported
> The warning message is wrong though without doubles, and still says double.
Can we add this explicitly to the test just for a record? I guess the warning message can't be changed to print the type correctly?

Also would it make sense to test other builtin types: double, char...?


CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D55023/new/

https://reviews.llvm.org/D55023





More information about the cfe-commits mailing list