aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorHåvard Pettersen <havardpe@oath.com>2018-05-14 14:18:12 +0000
committerHåvard Pettersen <havardpe@oath.com>2018-05-14 14:18:12 +0000
commitfed008f3e579b48adc96e22e3dade4ef6fddc96f (patch)
tree231bd59e88bf38e3af26f3979efd84fe25bdf94f
parent3ff927eebb513b55311c7f758f6d8b45e01afa69 (diff)
let queue elements have a trivial copy constructor
makes gcc 8 happier about us copying stuff around
-rw-r--r--fnet/src/vespa/fnet/packetqueue.cpp11
-rw-r--r--fnet/src/vespa/fnet/packetqueue.h5
2 files changed, 0 insertions, 16 deletions
diff --git a/fnet/src/vespa/fnet/packetqueue.cpp b/fnet/src/vespa/fnet/packetqueue.cpp
index e1efdfed357..44647d730ed 100644
--- a/fnet/src/vespa/fnet/packetqueue.cpp
+++ b/fnet/src/vespa/fnet/packetqueue.cpp
@@ -27,13 +27,7 @@ FNET_PacketQueue_NoLock::ExpandBuf(uint32_t needentries)
uint32_t rOfs = _out_pos;
uint32_t rLen = (_in_pos - _out_pos);
-//TODO Rewrite to pure C++
-#pragma GCC diagnostic push
-#if __GNUC__ >= 8
-#pragma GCC diagnostic ignored "-Wclass-memaccess"
-#endif
memcpy(newbuf + rOfs, _buf + rOfs, rLen * sizeof(_QElem));
-#pragma GCC diagnostic pop
} else { // WRAPPED
// BUFFER: |....................|
// USED: |######........######|
@@ -41,13 +35,8 @@ FNET_PacketQueue_NoLock::ExpandBuf(uint32_t needentries)
uint32_t r1Len = _in_pos;
uint32_t r2Len = (oldsize - _out_pos);
-#pragma GCC diagnostic push
-#if __GNUC__ >= 8
-#pragma GCC diagnostic ignored "-Wclass-memaccess"
-#endif
memcpy(newbuf, _buf, r1Len * sizeof(_QElem));
memcpy(newbuf + _bufsize - r2Len, _buf + oldsize - r2Len, r2Len * sizeof(_QElem));
-#pragma GCC diagnostic pop
_out_pos += _bufsize - oldsize;
}
free(_buf);
diff --git a/fnet/src/vespa/fnet/packetqueue.h b/fnet/src/vespa/fnet/packetqueue.h
index 1daca901120..e894b47d06e 100644
--- a/fnet/src/vespa/fnet/packetqueue.h
+++ b/fnet/src/vespa/fnet/packetqueue.h
@@ -28,11 +28,6 @@ protected:
{
FNET_Packet *_packet;
FNET_Context _context;
- protected:
- _QElem() : _packet(nullptr), _context() {}
- private:
- _QElem(const _QElem &);
- _QElem &operator=(const _QElem &);
};
#endif // DOXYGEN