tint: include T type in converter overload diagnostics
Fixed: tint:1710 Change-Id: Iac66b5bb9e1b8f38f46e01b1d6aee0e5284eb157 Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/105262 Reviewed-by: Antonio Maiorano <amaiorano@google.com> Kokoro: Kokoro <noreply+kokoro@google.com> Commit-Queue: Ben Clayton <bclayton@google.com>
This commit is contained in:
parent
c889500f6e
commit
a44e3d8bea
|
@ -1643,7 +1643,13 @@ void Impl::PrintOverload(std::ostream& ss,
|
|||
|
||||
auto earliest_eval_stage = sem::EvaluationStage::kConstant;
|
||||
|
||||
ss << intrinsic_name << "(";
|
||||
ss << intrinsic_name;
|
||||
if (overload->flags.Contains(OverloadFlag::kIsConverter) && overload->template_types) {
|
||||
ss << "<";
|
||||
ss << overload->template_types[0].name;
|
||||
ss << ">";
|
||||
}
|
||||
ss << "(";
|
||||
for (size_t p = 0; p < overload->num_parameters; p++) {
|
||||
auto& parameter = overload->parameters[p];
|
||||
if (p > 0) {
|
||||
|
|
|
@ -793,11 +793,11 @@ TEST_F(IntrinsicTableTest, MismatchTypeConstructorImplicit) {
|
|||
vec3() -> vec3<T> where: T is f32, f16, i32, u32 or bool
|
||||
|
||||
5 candidate conversions:
|
||||
vec3(vec3<U>) -> vec3<f32> where: T is f32, U is abstract-int, abstract-float, i32, f16, u32 or bool
|
||||
vec3(vec3<U>) -> vec3<f16> where: T is f16, U is abstract-int, abstract-float, f32, i32, u32 or bool
|
||||
vec3(vec3<U>) -> vec3<i32> where: T is i32, U is abstract-int, abstract-float, f32, f16, u32 or bool
|
||||
vec3(vec3<U>) -> vec3<u32> where: T is u32, U is abstract-int, abstract-float, f32, f16, i32 or bool
|
||||
vec3(vec3<U>) -> vec3<bool> where: T is bool, U is abstract-int, abstract-float, f32, f16, i32 or u32
|
||||
vec3<T>(vec3<U>) -> vec3<f32> where: T is f32, U is abstract-int, abstract-float, i32, f16, u32 or bool
|
||||
vec3<T>(vec3<U>) -> vec3<f16> where: T is f16, U is abstract-int, abstract-float, f32, i32, u32 or bool
|
||||
vec3<T>(vec3<U>) -> vec3<i32> where: T is i32, U is abstract-int, abstract-float, f32, f16, u32 or bool
|
||||
vec3<T>(vec3<U>) -> vec3<u32> where: T is u32, U is abstract-int, abstract-float, f32, f16, i32 or bool
|
||||
vec3<T>(vec3<U>) -> vec3<bool> where: T is bool, U is abstract-int, abstract-float, f32, f16, i32 or u32
|
||||
)");
|
||||
}
|
||||
|
||||
|
@ -819,11 +819,11 @@ TEST_F(IntrinsicTableTest, MismatchTypeConstructorExplicit) {
|
|||
vec3() -> vec3<T> where: T is f32, f16, i32, u32 or bool
|
||||
|
||||
5 candidate conversions:
|
||||
vec3(vec3<U>) -> vec3<f32> where: T is f32, U is abstract-int, abstract-float, i32, f16, u32 or bool
|
||||
vec3(vec3<U>) -> vec3<f16> where: T is f16, U is abstract-int, abstract-float, f32, i32, u32 or bool
|
||||
vec3(vec3<U>) -> vec3<i32> where: T is i32, U is abstract-int, abstract-float, f32, f16, u32 or bool
|
||||
vec3(vec3<U>) -> vec3<u32> where: T is u32, U is abstract-int, abstract-float, f32, f16, i32 or bool
|
||||
vec3(vec3<U>) -> vec3<bool> where: T is bool, U is abstract-int, abstract-float, f32, f16, i32 or u32
|
||||
vec3<T>(vec3<U>) -> vec3<f32> where: T is f32, U is abstract-int, abstract-float, i32, f16, u32 or bool
|
||||
vec3<T>(vec3<U>) -> vec3<f16> where: T is f16, U is abstract-int, abstract-float, f32, i32, u32 or bool
|
||||
vec3<T>(vec3<U>) -> vec3<i32> where: T is i32, U is abstract-int, abstract-float, f32, f16, u32 or bool
|
||||
vec3<T>(vec3<U>) -> vec3<u32> where: T is u32, U is abstract-int, abstract-float, f32, f16, i32 or bool
|
||||
vec3<T>(vec3<U>) -> vec3<bool> where: T is bool, U is abstract-int, abstract-float, f32, f16, i32 or u32
|
||||
)");
|
||||
}
|
||||
|
||||
|
@ -875,11 +875,11 @@ TEST_F(IntrinsicTableTest, MismatchTypeConversion) {
|
|||
vec3(x: T, y: T, z: T) -> vec3<T> where: T is abstract-int, abstract-float, f32, f16, i32, u32 or bool
|
||||
|
||||
5 candidate conversions:
|
||||
vec3(vec3<U>) -> vec3<f32> where: T is f32, U is abstract-int, abstract-float, i32, f16, u32 or bool
|
||||
vec3(vec3<U>) -> vec3<f16> where: T is f16, U is abstract-int, abstract-float, f32, i32, u32 or bool
|
||||
vec3(vec3<U>) -> vec3<i32> where: T is i32, U is abstract-int, abstract-float, f32, f16, u32 or bool
|
||||
vec3(vec3<U>) -> vec3<u32> where: T is u32, U is abstract-int, abstract-float, f32, f16, i32 or bool
|
||||
vec3(vec3<U>) -> vec3<bool> where: T is bool, U is abstract-int, abstract-float, f32, f16, i32 or u32
|
||||
vec3<T>(vec3<U>) -> vec3<f32> where: T is f32, U is abstract-int, abstract-float, i32, f16, u32 or bool
|
||||
vec3<T>(vec3<U>) -> vec3<f16> where: T is f16, U is abstract-int, abstract-float, f32, i32, u32 or bool
|
||||
vec3<T>(vec3<U>) -> vec3<i32> where: T is i32, U is abstract-int, abstract-float, f32, f16, u32 or bool
|
||||
vec3<T>(vec3<U>) -> vec3<u32> where: T is u32, U is abstract-int, abstract-float, f32, f16, i32 or bool
|
||||
vec3<T>(vec3<U>) -> vec3<bool> where: T is bool, U is abstract-int, abstract-float, f32, f16, i32 or u32
|
||||
)");
|
||||
}
|
||||
|
||||
|
|
Loading…
Reference in New Issue