File: 0003-Fix-no-member-named-expr.patch

package info (click to toggle)
miopen 6.4.3%2Bdfsg-1
  • links: PTS, VCS
  • area: main
  • in suites: sid
  • size: 66,788 kB
  • sloc: cpp: 300,511; lisp: 29,731; ansic: 2,683; sh: 471; python: 323; makefile: 155
file content (41 lines) | stat: -rw-r--r-- 1,175 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
From: Christian Bayle <bayle@debian.org>
Date: Fri, 26 Sep 2025 18:37:49 +0200
Subject: Fix no member named expr

---
 test/verify.hpp | 15 +++++++++++++++
 1 file changed, 15 insertions(+)

diff --git a/test/verify.hpp b/test/verify.hpp
index f541ca9..8c6d094 100644
--- a/test/verify.hpp
+++ b/test/verify.hpp
@@ -189,6 +189,7 @@ double max_diff(R1&& r1, R2&& r2)
     return range_product(r1, r2, 0.0, max, abs_diff);
 }
 
+/*
 template <class R1, class R2>
 auto max_diff_v2(R1&& r1, R2&& r2)
 {
@@ -200,6 +201,20 @@ auto max_diff_v2(R1&& r1, R2&& r2)
     else
         return range_product(r1, r2, T(), max, abs_diff_func);
 }
+*/
+template <class R1, class R2>
+auto max_diff_v2(R1&& r1, R2&& r2)
+{
+    using RawT = decltype(r1[0] - r2[0]);
+    using T    = std::conditional_t<std::is_convertible_v<RawT, half_float::half>,
+                                   half_float::half,
+                                   RawT>;
+
+    auto abs_diff_func = [](auto x, auto y) { return x > y ? x - y : y - x; };
+
+    return range_product(r1, r2, T{}, max, abs_diff_func);
+}
+
 
 template <class R1, class R2, class T>
 std::size_t mismatch_diff(R1&& r1, R2&& r2, T diff)