Suppress Clang 7 self-assignment warnings
authorMika Väinölä <mika.vainola@siru.fi>
Wed, 3 Oct 2018 13:03:46 +0000 (16:03 +0300)
committerChris Forbes <chrisforbes@google.com>
Fri, 9 Nov 2018 23:14:54 +0000 (15:14 -0800)
Clang 7 warns on two intentional self-assignments. According to the
release notes "the warning can be suppressed by adding *& to the
right-hand side or casting it to the appropriate reference type."

Component: Framework

VK-GL-CTS issue: 1401

Change-Id: I3145b1965d46f617eb10ff8a60d038ce9bbb5cbf
(cherry picked from commit 3aa55b5b9bd903f279e234304a2affd409b18e8d)

framework/delibs/decpp/deSharedPtr.cpp

index c2c90b4..f87fec1 100644 (file)
@@ -179,7 +179,7 @@ void SharedPtr_selfTest (void)
                SharedPtr<Object> ptrA;
                SharedPtr<Object> ptrB;
                ptrB = ptrA;
-               ptrB = ptrB;
+               ptrB = *&ptrB;
        }
 
        // Basic test.
@@ -235,7 +235,7 @@ void SharedPtr_selfTest (void)
                        SharedPtr<Object> ptr(new Object(exists));
                        DE_TEST_ASSERT(exists);
                        DE_TEST_ASSERT(ptr.get() != DE_NULL);
-                       ptr = ptr;
+                       ptr = *&ptr;
                }
                DE_TEST_ASSERT(!exists);
        }