Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
Rewrite without delegated constructor.
authorArnaud Giersch <arnaud.giersch@univ-fcomte.fr>
Mon, 9 Apr 2018 13:11:19 +0000 (15:11 +0200)
committerArnaud Giersch <arnaud.giersch@univ-fcomte.fr>
Mon, 9 Apr 2018 13:34:47 +0000 (15:34 +0200)
Cppcheck (codacy) gives false positive about address_ being uninitialized.

src/mc/remote/RemotePtr.hpp

index da0a94a..6288fd5 100644 (file)
@@ -84,7 +84,7 @@ public:
   explicit RemotePtr(std::nullptr_t) : address_(0) {}
   explicit RemotePtr(std::uint64_t address) : address_(address) {}
   explicit RemotePtr(T* address) : address_((std::uintptr_t)address) {}
   explicit RemotePtr(std::nullptr_t) : address_(0) {}
   explicit RemotePtr(std::uint64_t address) : address_(address) {}
   explicit RemotePtr(T* address) : address_((std::uintptr_t)address) {}
-  explicit RemotePtr(Remote<T*> p) : RemotePtr(*p.getBuffer()) {}
+  explicit RemotePtr(Remote<T*> p) : address_((std::uintptr_t)*p.getBuffer()) {}
   std::uint64_t address() const { return address_; }
 
   /** Turn into a local pointer
   std::uint64_t address() const { return address_; }
 
   /** Turn into a local pointer