A few more strict aliasing warnings
-----------------------------------
Key: AMQCPP-42
URL: https://issues.apache.org/activemq/browse/AMQCPP-42
Project: ActiveMQ C++ Client
Issue Type: Bug
Affects Versions: 1.1
Reporter: Albert Strasheim
Assigned To: Nathan Mittler
Priority: Critical
Fix For: 1.1
Brought over from AMQCPP-25.
We might consider using -Wstrict-aliasing=2. Warns in more cases, with some
chance of false positives.
I still get the following warnings with GCC 4.1.1 on FC6 with revision 495335:
{noformat}
activemq/network/ServerSocket.cpp: In member function 'virtual void
activemq::network::ServerSocket::bind(const char*, int, int)':
activemq/network/ServerSocket.cpp:162: warning: dereferencing type-punned
pointer might break strict-aliasing rules
activemq/network/ServerSocket.cpp: In member function 'virtual
activemq::network::Socket* activemq::network::ServerSocket::accept()':
activemq/network/ServerSocket.cpp:208: warning: dereferencing type-punned
pointer might break strict-aliasing rules
activemq/io/DataInputStreamTest.h:85: warning: dereferencing type-punned
pointer will break strict-aliasing rules
activemq/io/DataInputStreamTest.h:86: warning: dereferencing type-punned
pointer will break strict-aliasing rules
{noformat}
I noticed you used a memcpys to fix this issue. Did you consider trying a
union? Without knowing for certain (maybe we'll do some benchmarks tomorrow), a
union might be faster than a call to memcpy.
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
https://issues.apache.org/activemq/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira