================
@@ -0,0 +1,18 @@
+// RUN: %clang_cc1 -finclude-default-header -triple
dxil-pc-shadermodel6.6-library %s -fnative-half-type -emit-llvm-only
-disable-llvm-passes -verify -verify-ignore-unexpected
----------------
joaosaffran wrote:
I've updated the tests, but here is the full error message, for such tests:
```hlsl
/workspace/llvm-project/build-debug/bin/clang -cc1 -internal-isystem
/workspace/llvm-project/build-debug/lib/clang/20/include -nostdsysteminc
-finclude-default-header -x hlsl -triple dxil-pc-shadermodel6.3-library
/workspace/llvm-project/clang/test/SemaHLSL/BuiltIns/asuint-errors.hlsl
-fnative-half-type -emit-llvm
[12/12] Creating executable symlink bin/clang
/workspace/llvm-project/clang/test/SemaHLSL/BuiltIns/asuint-errors.hlsl:5:10:
error: no matching function for call to 'asuint'
5 | return asuint(p0, p1);
| ^~~~~~
/workspace/llvm-project/build-debug/lib/clang/20/include/hlsl/hlsl_intrinsics.h:401:30:
note: candidate function template not viable: requires single argument 'V',
but 2 arguments were provided
401 | _HLSL_INLINE vector<uint, N> asuint(vector<T, N> V) {
| ^ ~~~~~~~~~~~~~~
/workspace/llvm-project/build-debug/lib/clang/20/include/hlsl/hlsl_intrinsics.h:405:41:
note: candidate function template not viable: requires single argument 'F',
but 2 arguments were provided
405 | template <typename T> _HLSL_INLINE uint asuint(T F) {
| ^ ~~~
/workspace/llvm-project/build-debug/lib/clang/20/include/hlsl/hlsl_intrinsics.h:406:10:
error: no matching function for call to 'bit_cast'
406 | return __detail::bit_cast<uint, T>(F);
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~
/workspace/llvm-project/clang/test/SemaHLSL/BuiltIns/asuint-errors.hlsl:12:12:
note: in instantiation of function template specialization
'hlsl::asuint<double>' requested here
12 | return asuint(p1);
| ^
/workspace/llvm-project/build-debug/lib/clang/20/include/hlsl/hlsl_detail.h:27:1:
note: candidate template ignored: could not match 'vector<double, N>' against
'double'
27 | bit_cast(vector<T, N> V) {
| ^
/workspace/llvm-project/build-debug/lib/clang/20/include/hlsl/hlsl_detail.h:32:66:
note: candidate template ignored: substitution failure [with U = uint, T =
double]: no type named 'Type' in 'hlsl::__detail::enable_if<false, unsigned
int>'
32 | _HLSL_INLINE typename enable_if<sizeof(U) == sizeof(T), U>::Type
bit_cast(T F) {
| ~~~~~~~~ ^
In file included from <built-in>:1:
In file included from
/workspace/llvm-project/build-debug/lib/clang/20/include/hlsl.h:13:
/workspace/llvm-project/build-debug/lib/clang/20/include/hlsl/hlsl_intrinsics.h:406:10:
error: no matching function for call to 'bit_cast'
406 | return __detail::bit_cast<uint, T>(F);
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~
/workspace/llvm-project/clang/test/SemaHLSL/BuiltIns/asuint-errors.hlsl:20:12:
note: in instantiation of function template specialization 'hlsl::asuint<half>'
requested here
20 | return asuint(p1);
| ^
/workspace/llvm-project/build-debug/lib/clang/20/include/hlsl/hlsl_detail.h:27:1:
note: candidate template ignored: could not match 'vector<half, N>' against
'half'
27 | bit_cast(vector<T, N> V) {
| ^
/workspace/llvm-project/build-debug/lib/clang/20/include/hlsl/hlsl_detail.h:32:66:
note: candidate template ignored: substitution failure [with U = uint, T =
half]: no type named 'Type' in 'hlsl::__detail::enable_if<false, unsigned int>'
32 | _HLSL_INLINE typename enable_if<sizeof(U) == sizeof(T), U>::Type
bit_cast(T F) {
| ~~~~~~~~ ^
3 errors generated.
```
https://github.com/llvm/llvm-project/pull/107292
_______________________________________________
cfe-commits mailing list
[email protected]
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits