// RUN: %clang_cc1 -finclude-default-header -triple dxil-pc-shadermodel6.6-library %s -verify -verify-ignore-unexpected=note struct S { int A : 8; int B; }; struct R { int A; union { float F; int4 G; }; }; // casting types which contain bitfields is not yet supported. export void cantCast() { S s = (S)1; // expected-error@-1 {{no matching conversion for C-style cast from 'int' to 'S'}} } // Can't cast a union export void cantCast2() { R r = (R)1; // expected-error@-1 {{no matching conversion for C-style cast from 'int' to 'R'}} } RWBuffer Buf; // Can't cast an intangible type export void cantCast3() { Buf = (RWBuffer)1; // expected-error@-1 {{no matching conversion for C-style cast from 'int' to 'RWBuffer' (aka 'RWBuffer>')}} } export void cantCast4() { RWBuffer B[2] = (RWBuffer[2])1; // expected-error@-1 {{C-style cast from 'int' to 'RWBuffer[2]' (aka 'RWBuffer>[2]') is not allowed}} } struct X { int A; RWBuffer Buf; }; export void cantCast5() { X x = (X)1; // expected-error@-1 {{no matching conversion for C-style cast from 'int' to 'X'}} }