From 42067de44c51ec3bb6d2070677d832b8666ff71b Mon Sep 17 00:00:00 2001 From: Ivano Ras Date: Tue, 19 Jul 2016 15:29:01 +0100 Subject: [PATCH] use union to remove warning (issue 105). (#108) --- src/ifcgeomserver/IfcGeomServer.cpp | 12 +++++++++--- 1 file changed, 9 insertions(+), 3 deletions(-) diff --git a/src/ifcgeomserver/IfcGeomServer.cpp b/src/ifcgeomserver/IfcGeomServer.cpp index 16e0f95d3a..aa715d62fc 100644 --- a/src/ifcgeomserver/IfcGeomServer.cpp +++ b/src/ifcgeomserver/IfcGeomServer.cpp @@ -46,11 +46,17 @@ using namespace boost; +template +union data_field { + char buffer[sizeof(T)]; + T value; +}; + template T sread(std::istream& s) { - char buf[sizeof(T)]; - s.read(buf, sizeof(T)); - return *((T*)buf); + data_field data; + s.read(data.buffer, sizeof(T)); + return data.value; } template <>