From 2a3898d75c332a47463146ed8ae2d5e3f4a19c98 Mon Sep 17 00:00:00 2001
From: Guillaume_G <>
Date: Apr 20 2023 14:54:26 +0000
Subject: Update armnn to version 23.02 / rev 4 via SR 1080889


https://build.opensuse.org/request/show/1080889
by user Guillaume_G + dimstar_suse
- Add additionnal gcc13 fixes:
  * 4cf40d7.diff
  * armnn-fix-gcc13-2.patch
- Update armnn-fix-gcc13.patch with upstream patch
- Add patch to fix build with GCC13:
  * armnn-fix-gcc13.patch

---

diff --git a/.files b/.files
index 2d08bed..7622987 100644
Binary files a/.files and b/.files differ
diff --git a/.rev b/.rev
index 0f428da..f327cc5 100644
--- a/.rev
+++ b/.rev
@@ -23,4 +23,18 @@
     <comment></comment>
     <requestid>1072066</requestid>
   </revision>
+  <revision rev="4" vrev="2">
+    <srcmd5>4f3738fb00e62bc6fe482c7e4d3d1445</srcmd5>
+    <version>23.02</version>
+    <time>1682002140</time>
+    <user>dimstar_suse</user>
+    <comment>- Add additionnal gcc13 fixes:
+  * 4cf40d7.diff
+  * armnn-fix-gcc13-2.patch
+- Update armnn-fix-gcc13.patch with upstream patch
+- Add patch to fix build with GCC13:
+  * armnn-fix-gcc13.patch
+</comment>
+    <requestid>1080889</requestid>
+  </revision>
 </revisionlist>
diff --git a/4cf40d7.diff b/4cf40d7.diff
new file mode 100644
index 0000000..e73058a
--- /dev/null
+++ b/4cf40d7.diff
@@ -0,0 +1,30 @@
+From 4cf40d70f8e9da3184bb4c9b604db6a3b23d6533 Mon Sep 17 00:00:00 2001
+From: Teresa Charlin <teresa.charlinreyes@arm.com>
+Date: Thu, 20 Apr 2023 11:55:48 +0100
+Subject: [PATCH] GitHub #723 Fix Maybe uninitialized variable
+
+
+Signed-off-by: Teresa Charlin <teresa.charlinreyes@arm.com>
+Change-Id: I70d3673bbb2dc113ac5eb6d63029a4a4a684e831
+---
+
+diff --git a/include/armnn/backends/Workload.hpp b/include/armnn/backends/Workload.hpp
+index be6fbd9..9f7aad0 100644
+--- a/include/armnn/backends/Workload.hpp
++++ b/include/armnn/backends/Workload.hpp
+@@ -1,5 +1,5 @@
+ //
+-// Copyright © 2022 Arm Ltd and Contributors. All rights reserved.
++// Copyright © 2022-2023 Arm Ltd and Contributors. All rights reserved.
+ // SPDX-License-Identifier: MIT
+ //
+ #pragma once
+@@ -124,6 +124,8 @@
+ 
+             if (!info.m_InputTensorInfos.empty())
+             {
++                expectedInputType = info.m_InputTensorInfos.front().GetDataType();
++
+                 if (expectedOutputType != expectedInputType)
+                 {
+                     ARMNN_ASSERT_MSG(false, "Trying to create workload with incorrect type");
diff --git a/armnn-fix-gcc13-2.patch b/armnn-fix-gcc13-2.patch
new file mode 100644
index 0000000..1a3c2c3
--- /dev/null
+++ b/armnn-fix-gcc13-2.patch
@@ -0,0 +1,10 @@
+--- ./profiling/client/include/Holder.hpp.orig	2023-03-21 14:36:13.377591628 +0100
++++ ./profiling/client/include/Holder.hpp	2023-03-21 14:36:31.325798921 +0100
+@@ -8,6 +8,7 @@
+ #include <mutex>
+ #include <vector>
+ #include <set>
++#include <string>
+ 
+ namespace arm
+ {
diff --git a/armnn-fix-gcc13.patch b/armnn-fix-gcc13.patch
new file mode 100644
index 0000000..ecb9068
--- /dev/null
+++ b/armnn-fix-gcc13.patch
@@ -0,0 +1,98 @@
+From 4746ab11be5a8558a54c21142800abaa30efc3a6 Mon Sep 17 00:00:00 2001
+From: Pablo Marquez Tello <pablo.tello@arm.com>
+Date: Fri, 31 Mar 2023 15:57:43 +0100
+Subject: [PATCH] Fix gcc 13 compiler errors
+
+* Resolves MLCE-1040
+
+Change-Id: I32878ed70af356832403e83dcb63b0b89a8a84e3
+Signed-off-by: Pablo Marquez Tello <pablo.tello@arm.com>
+---
+
+diff --git a/include/armnn/utility/TransformIterator.hpp b/include/armnn/utility/TransformIterator.hpp
+index f65ac79..b038447 100644
+--- a/include/armnn/utility/TransformIterator.hpp
++++ b/include/armnn/utility/TransformIterator.hpp
+@@ -1,5 +1,5 @@
+ //
+-// Copyright © 2020 Arm Ltd and Contributors. All rights reserved.
++// Copyright © 2020,2023 Arm Ltd and Contributors. All rights reserved.
+ // SPDX-License-Identifier: MIT
+ //
+ #pragma once
+@@ -18,10 +18,15 @@
+         typename Reference =
+         typename std::result_of<const Function(typename std::iterator_traits<Iterator>::reference)>::type
+ >
+-class TransformIterator : public std::iterator<Category, T, Distance, Pointer, Reference>
++class TransformIterator
+ {
+-
+ public:
++    using iterator_category = Category;
++    using value_type = T;
++    using difference_type = Distance;
++    using pointer = Pointer;
++    using reference = Reference;
++
+ 
+     TransformIterator() = default;
+     TransformIterator(TransformIterator const& transformIterator) = default;
+@@ -83,4 +88,4 @@
+     return TransformIterator<Function, Iterator>(i, f);
+ }
+ 
+-}
+\ No newline at end of file
++}
+diff --git a/profiling/client/include/CounterIdMap.hpp b/profiling/client/include/CounterIdMap.hpp
+index cce7184..45cad7b 100644
+--- a/profiling/client/include/CounterIdMap.hpp
++++ b/profiling/client/include/CounterIdMap.hpp
+@@ -1,9 +1,10 @@
+ //
+-// Copyright © 2020 Arm Ltd. All rights reserved.
++// Copyright © 2020,2023 Arm Ltd and Contributors. All rights reserved.
+ // SPDX-License-Identifier: MIT
+ //
+ #pragma once
+ 
++#include <cstdint>
+ #include <map>
+ #include <string>
+ 
+diff --git a/profiling/common/include/Counter.hpp b/profiling/common/include/Counter.hpp
+index ff96d25..4ddc89b 100644
+--- a/profiling/common/include/Counter.hpp
++++ b/profiling/common/include/Counter.hpp
+@@ -1,10 +1,11 @@
+ //
+-// Copyright © 2022 Arm Ltd. All rights reserved.
++// Copyright © 2022,2023 Arm Ltd and Contributors. All rights reserved.
+ // SPDX-License-Identifier: MIT
+ //
+ 
+ #pragma once
+ 
++#include <cstdint>
+ #include <string>
+ 
+ namespace arm
+diff --git a/src/armnnUtils/VerificationHelpers.hpp b/src/armnnUtils/VerificationHelpers.hpp
+index be09ba9..508cdc0 100644
+--- a/src/armnnUtils/VerificationHelpers.hpp
++++ b/src/armnnUtils/VerificationHelpers.hpp
+@@ -1,11 +1,11 @@
+ //
+-// Copyright © 2017 Arm Ltd. All rights reserved.
++// Copyright © 2017,2023 Arm Ltd and Contributors. All rights reserved.
+ // SPDX-License-Identifier: MIT
+ //
+ 
+ #include <iostream>
+ #include <sstream>
+-
++#include <cstdint>
+ #include <armnn/Exceptions.hpp>
+ 
+ namespace armnnUtils
diff --git a/armnn.changes b/armnn.changes
index a5cb9da..b8599ea 100644
--- a/armnn.changes
+++ b/armnn.changes
@@ -1,4 +1,22 @@
 -------------------------------------------------------------------
+Thu Apr 20 12:48:18 UTC 2023 - Guillaume GARDET <guillaume.gardet@opensuse.org>
+
+- Add additionnal gcc13 fixes:
+  * 4cf40d7.diff
+  * armnn-fix-gcc13-2.patch
+
+-------------------------------------------------------------------
+Wed Apr  5 06:06:27 UTC 2023 - Guillaume GARDET <guillaume.gardet@opensuse.org>
+
+- Update armnn-fix-gcc13.patch with upstream patch
+
+-------------------------------------------------------------------
+Tue Mar 21 10:45:26 UTC 2023 - Guillaume GARDET <guillaume.gardet@opensuse.org>
+
+- Add patch to fix build with GCC13:
+  * armnn-fix-gcc13.patch
+
+-------------------------------------------------------------------
 Wed Mar 15 09:03:42 UTC 2023 - Guillaume GARDET <guillaume.gardet@opensuse.org>
 
 - Update to 23.02:
diff --git a/armnn.spec b/armnn.spec
index 5c69753..b8f3793 100644
--- a/armnn.spec
+++ b/armnn.spec
@@ -79,6 +79,11 @@ Group:          Development/Libraries/Other
 URL:            https://developer.arm.com/products/processors/machine-learning/arm-nn
 Source0:        https://github.com/ARM-software/armnn/archive/v%{version}.tar.gz#/armnn-%{version}.tar.gz
 Source1:        armnn-rpmlintrc
+# PATCH-FIX-UPSTREAM - https://github.com/ARM-software/armnn/issues/723
+Patch1:         armnn-fix-gcc13.patch
+Patch2:         armnn-fix-gcc13-2.patch
+# PATCH-FIX-UPSTREAM  - https://review.mlplatform.org/c/ml/armnn/+/9460
+Patch3:         4cf40d7.diff
 # PATCHES to add downstream ArmnnExamples binary - https://layers.openembedded.org/layerindex/recipe/87610/
 Patch200:       0003-add-more-test-command-line-arguments.patch
 Patch201:       0005-add-armnn-mobilenet-test-example.patch
@@ -372,6 +377,9 @@ This package contains the libarmnnOnnxParser library from armnn.
 
 %prep
 %setup -q -n armnn-%{version}
+%patch1 -p1
+%patch2 -p1
+%patch3 -p1
 %if %{with armnn_extra_tests}
 %patch200 -p1
 %patch201 -p1