summaryrefslogtreecommitdiff
path: root/dev-cpp/tbb/files/tbb-2020.3-gcc13.patch
blob: 1c0803048ca70e927c482fc960a1c903cc1cd0e4 (plain)
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
https://bugs.gentoo.org/899746
https://github.com/oneapi-src/oneTBB/pull/833

From c18342ba667d1f33f5e9a773aa86b091a9694b97 Mon Sep 17 00:00:00 2001
From: Sergei Trofimovich <slyich@gmail.com>
Date: Fri, 20 May 2022 07:50:00 +0100
Subject: [PATCH] tbb_2020: fix build on gcc-13

On gcc-13 build started failing due to 'task' identifier collision as:

    ../../include/tbb/task.h:300:20: error: declaration of 'tbb::task& tbb::internal::task_prefix::task()' changes meaning of 'task' [-fpermissive]
      300 |         tbb::task& task() {return *reinterpret_cast<tbb::task*>(this+1);}
          |                    ^~~~
    ../../include/tbb/task.h:252:9: note: used here to mean 'class tbb::task'
      252 |         task* next_offloaded;
          |         ^~~~
    ../../include/tbb/task.h:43:7: note: declared here
       43 | class task;
          |       ^~~~

The change adds explicit qualifier to class name to avoid ambiguity with method name.

Signed-off-by: Sergei Trofimovich <slyich@gmail.com>
--- a/include/tbb/task.h
+++ b/include/tbb/task.h
@@ -249,7 +249,7 @@ namespace internal {
 #if __TBB_TASK_PRIORITY
         //! Pointer to the next offloaded lower priority task.
         /** Used to maintain a list of offloaded tasks inside the scheduler. **/
-        task* next_offloaded;
+        tbb::task* next_offloaded;
 #endif
 
 #if __TBB_PREVIEW_RESUMABLE_TASKS