| // RUN: %clang_cc1 -triple dxil-pc-shadermodel6.3-library -x hlsl -o - -fsyntax-only %s -verify |
| // expected-note@+1 {{declared here}} |
| // expected-error@+1 {{'a' does not refer to a value}} |
| // expected-error@+1 {{expected unqualified-id}} |
| template <typename Ty> cbuffer a { Ty f; }; |
| // For back-compat reason, it is OK for multiple cbuffer/tbuffer use same name in hlsl. |
| // And these cbuffer name only used for reflection, cannot be removed. |
| // cbuffer/tbuffer name will not conflict with other variables. |
| // expected-error@+2 {{unknown type name 'oh'}} |
| // expected-error@+1 {{expected ';' after top level declarator}} |
| // expected-warning@+1 {{missing terminating ' character}} |
| this isn't even valid HLSL code |
| despite seeming totally reasonable |
| once you understand that HLSL |
| // expected-error@+1 {{unknown type name 'flaot'}} |