Fix more compile error/warnings for gcc-13 14/295414/6
authorEunki Hong <eunkiki.hong@samsung.com>
Fri, 7 Jul 2023 00:08:56 +0000 (09:08 +0900)
committerEunki Hong <eunkiki.hong@samsung.com>
Wed, 12 Jul 2023 15:31:59 +0000 (00:31 +0900)
 - Let we ignore -Wself-move for some UTC
 - Include vector-wrapper and cstdint

Change-Id: I0bfe5be0cbc4f76645618fcdd52bdeb87df00da5
Signed-off-by: Eunki Hong <eunkiki.hong@samsung.com>
automated-tests/src/dali-internal/utc-Dali-Internal-ActorObserver.cpp
automated-tests/src/dali-internal/utc-Dali-Internal-IndexedConstStringMap.cpp
automated-tests/src/dali-internal/utc-Dali-Internal-OwnerPointer.cpp
automated-tests/src/dali/dali-test-suite-utils/test-actor-utils.h
automated-tests/src/dali/utc-Dali-PropertyArray.cpp
automated-tests/src/dali/utc-Dali-PropertyMap.cpp
automated-tests/src/dali/utc-Dali-PropertyValue.cpp
dali/devel-api/addons/addon-dispatch-table.h
dali/public-api/math/random.h

index 50d1e87..c6478e3 100644 (file)
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2020 Samsung Electronics Co., Ltd.
+ * Copyright (c) 2023 Samsung Electronics Co., Ltd.
  *
  * Licensed under the Apache License, Version 2.0 (the "License");
  * you may not use this file except in compliance with the License.
@@ -153,11 +153,19 @@ int UtcDaliActorObserverMoveConstructorAndAssignmentEmpty(void)
   DALI_TEST_EQUALS(observer1.GetActor(), nullptr, TEST_LOCATION);
   DALI_TEST_EQUALS(observer2.GetActor(), nullptr, TEST_LOCATION);
 
+  // Self std::move assignment make compile warning over gcc-13. Let we ignore the warning.
+#if (__GNUC__ >= 13)
+#pragma GCC diagnostic push
+#pragma GCC diagnostic ignored "-Wself-move"
+#endif
   // Ensure self assignment doesn't change anything
   observer1 = std::move(observer1);
   observer2 = std::move(observer2);
   DALI_TEST_EQUALS(observer1.GetActor(), nullptr, TEST_LOCATION);
   DALI_TEST_EQUALS(observer2.GetActor(), nullptr, TEST_LOCATION);
+#if (__GNUC__ >= 13)
+#pragma GCC diagnostic pop
+#endif
 
   END_TEST;
 }
@@ -185,11 +193,19 @@ int UtcDaliActorObserverMoveConstructorAndAssignment(void)
   DALI_TEST_EQUALS(observer1.GetActor(), &actorImpl, TEST_LOCATION);
   DALI_TEST_EQUALS(observer2.GetActor(), nullptr, TEST_LOCATION);
 
+  // Self std::move assignment make compile warning over gcc-13. Let we ignore the warning.
+#if (__GNUC__ >= 13)
+#pragma GCC diagnostic push
+#pragma GCC diagnostic ignored "-Wself-move"
+#endif
   // Self assignment
   observer1 = std::move(observer1);
   observer2 = std::move(observer2);
   DALI_TEST_EQUALS(observer1.GetActor(), &actorImpl, TEST_LOCATION);
   DALI_TEST_EQUALS(observer2.GetActor(), nullptr, TEST_LOCATION);
+#if (__GNUC__ >= 13)
+#pragma GCC diagnostic pop
+#endif
 
   END_TEST;
 }
index 37fba19..70ad4fd 100644 (file)
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2022 Samsung Electronics Co., Ltd.
+ * Copyright (c) 2023 Samsung Electronics Co., Ltd.
  *
  * Licensed under the Apache License, Version 2.0 (the "License");
  * you may not use this file except in compliance with the License.
@@ -49,16 +49,15 @@ std::string RandomString(size_t length)
   return s;
 }
 
-// Custom << operator to print debugging log.
-std::basic_ostream<char>& operator<<(std::basic_ostream<char>& os, const ConstString& constString)
+} // namespace
+
+// Custom DALI_TEST_EQUALS for ConstString
+template<>
+inline void DALI_TEST_EQUALS<ConstString>(ConstString str1, ConstString str2, const char* location)
 {
-  std::string convertedString = std::string(constString.GetStringView());
-  os << convertedString;
-  return os;
+  DALI_TEST_EQUALS(str1.GetStringView(), str2.GetStringView(), location);
 }
 
-} // namespace
-
 void utc_dali_internal_indexed_conststring_map_startup(void)
 {
   test_return_value = TET_UNDEF;
index 01af1ad..f1aba87 100644 (file)
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2020 Samsung Electronics Co., Ltd.
+ * Copyright (c) 2023 Samsung Electronics Co., Ltd.
  *
  * Licensed under the Apache License, Version 2.0 (the "License");
  * you may not use this file except in compliance with the License.
@@ -163,12 +163,20 @@ int UtcDaliOwnerPointerMove(void)
     DALI_TEST_CHECK(second.Get() == owned);
     DALI_TEST_EQUALS(deleted, false, TEST_LOCATION);
 
+    // Self std::move assignment make compile warning over gcc-13. Let we ignore the warning.
+#if (__GNUC__ >= 13)
+#pragma GCC diagnostic push
+#pragma GCC diagnostic ignored "-Wself-move"
+#endif
     // Self assignment, nothing should change or be deleted.
     first  = std::move(first);
     second = std::move(second);
     DALI_TEST_CHECK(first.Get() == nullptr);
     DALI_TEST_CHECK(second.Get() == owned);
     DALI_TEST_EQUALS(deleted, false, TEST_LOCATION);
+#if (__GNUC__ >= 13)
+#pragma GCC diagnostic pop
+#endif
 
     // Assign second to first, no deletion, second should have a nullptr now
     first = std::move(second);
index 6571365..03a65c1 100644 (file)
@@ -19,6 +19,7 @@
  */
 
 // EXTERNAL INCLUDES
+#include <dali/public-api/common/vector-wrapper.h>
 #include <dali/public-api/rendering/texture-set.h>
 #include <dali/public-api/rendering/texture.h>
 #include <set> // For std::multiset
index 2858170..40a7c12 100644 (file)
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2020 Samsung Electronics Co., Ltd.
+ * Copyright (c) 2023 Samsung Electronics Co., Ltd.
  *
  * Licensed under the Apache License, Version 2.0 (the "License");
  * you may not use this file except in compliance with the License.
@@ -368,9 +368,17 @@ int UtcDaliPropertyArrayMoveAssignmentOperator(void)
   DALI_TEST_ASSERTION(const_cast<const Property::Array&>(array1)[0], exceptionMessage);
   DALI_TEST_ASSERTION(Property::Array temp; array1 = temp, exceptionMessage);
 
+  // Self std::move assignment make compile warning over gcc-13. Let we ignore the warning.
+#if (__GNUC__ >= 13)
+#pragma GCC diagnostic push
+#pragma GCC diagnostic ignored "-Wself-move"
+#endif
   // Self assignemnt
   array2 = std::move(array2);
   DALI_TEST_EQUALS(3u, array2.Size(), TEST_LOCATION); // still works, no debug assert
+#if (__GNUC__ >= 13)
+#pragma GCC diagnostic pop
+#endif
 
   END_TEST;
 }
index 61edaee..c992baf 100755 (executable)
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2022 Samsung Electronics Co., Ltd.
+ * Copyright (c) 2023 Samsung Electronics Co., Ltd.
  *
  * Licensed under the Apache License, Version 2.0 (the "License");
  * you may not use this file except in compliance with the License.
@@ -162,9 +162,17 @@ int UtcDaliPropertyMapMoveAssignmentOperator(void)
   DALI_TEST_ASSERTION(const_cast<const Property::Map&>(map1)[0], exceptionMessage);
   DALI_TEST_ASSERTION(Property::Map temp; map1 = temp, exceptionMessage);
 
+  // Self std::move assignment make compile warning over gcc-13. Let we ignore the warning.
+#if (__GNUC__ >= 13)
+#pragma GCC diagnostic push
+#pragma GCC diagnostic ignored "-Wself-move"
+#endif
   // Self assignment
   map2 = std::move(map2);
   DALI_TEST_EQUALS(3u, map2.Count(), TEST_LOCATION); // No debug assert as nothing should happen
+#if (__GNUC__ >= 13)
+#pragma GCC diagnostic pop
+#endif
 
   END_TEST;
 }
index bf9c4b0..449fce2 100644 (file)
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2022 Samsung Electronics Co., Ltd.
+ * Copyright (c) 2023 Samsung Electronics Co., Ltd.
  *
  * Licensed under the Apache License, Version 2.0 (the "License");
  * you may not use this file except in compliance with the License.
@@ -812,10 +812,18 @@ int UtcDaliPropertyValueMoveAssignmentOperator(void)
   DALI_TEST_EQUALS(true, value2.Get(valueFloat), TEST_LOCATION); // Should be able to convert to a float now
   DALI_TEST_EQUALS(valueFloat, 1.0f, TEST_LOCATION);
 
+  // Self std::move assignment make compile warning over gcc-13. Let we ignore the warning.
+#if (__GNUC__ >= 13)
+#pragma GCC diagnostic push
+#pragma GCC diagnostic ignored "-Wself-move"
+#endif
   // Ensure self assignment doesn't do anything silly
   value2 = std::move(value2);
   DALI_TEST_EQUALS(true, value2.Get(valueFloat), TEST_LOCATION);
   DALI_TEST_EQUALS(valueFloat, 1.0f, TEST_LOCATION);
+#if (__GNUC__ >= 13)
+#pragma GCC diagnostic pop
+#endif
 
   END_TEST;
 }
index 12c9c64..d50826f 100644 (file)
@@ -2,7 +2,7 @@
 #define DALI_ADDON_DISPATCH_TABLE_H
 
 /*
- * Copyright (c) 2021 Samsung Electronics Co., Ltd.
+ * Copyright (c) 2023 Samsung Electronics Co., Ltd.
  *
  * Licensed under the Apache License, Version 2.0 (the "License");
  * you may not use this file except in compliance with the License.
@@ -21,6 +21,7 @@
 #include <dali/public-api/common/vector-wrapper.h>
 #include <algorithm>
 #include <string>
+#include <cstdint>
 
 namespace Dali
 {
index 066e4ba..4d9fd4f 100644 (file)
@@ -2,7 +2,7 @@
 #define DALI_RANDOM_H
 
 /*
- * Copyright (c) 2020 Samsung Electronics Co., Ltd.
+ * Copyright (c) 2023 Samsung Electronics Co., Ltd.
  *
  * Licensed under the Apache License, Version 2.0 (the "License");
  * you may not use this file except in compliance with the License.
 
 // INTERNAL INCLUDES
 #include <dali/public-api/math/vector4.h>
+
+// EXTERNAL INCLUDES
 #include <algorithm>
+#include <ctime> ///< for time(nullptr)
 
 namespace Dali
 {