Do not violate the opencl casting rules. This test case still illustrates the problem. In the future, we should throw an error when doing invalid casting.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@134570 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
Tanya Lattner 2011-07-07 00:12:54 +00:00
Родитель 2fad7838c0
Коммит 9934078119
1 изменённых файлов: 3 добавлений и 4 удалений

Просмотреть файл

@ -1,12 +1,11 @@
// RUN: %clang_cc1 %s -emit-llvm -o %t
typedef __attribute__((ext_vector_type(4))) unsigned char uchar4;
typedef __attribute__((ext_vector_type(4))) unsigned int int4;
typedef __attribute__((ext_vector_type(8))) unsigned char uchar8;
// OpenCL allows vectors to be initialized by vectors Handle bug in
// VisitInitListExpr for this case below.
void foo( int4 v )
void foo( uchar8 x )
{
uchar4 val[4] = {{(uchar4){((uchar8)(v.lo)).lo}}};
}
uchar4 val[4] = {{(uchar4){x.lo}}};
}