tags 540679 + patch
thanks

Hi!

The attached patch _may_ be a workaround for the FTBFS; it merely
wraps around a void * to avoid the cast error, like other locations in
the source.

This may help proceed with the bug; I have not tested it on non-amd64
architectures, though.

HTH.

Kumar
diff -Nru --exclude changelog xorp-1.6/libproto/packet.cc xorp-1.6/libproto/packet.cc
--- xorp-1.6/libproto/packet.cc	2009-01-05 12:30:55.000000000 -0600
+++ xorp-1.6/libproto/packet.cc	2009-11-16 22:51:50.000000000 -0600
@@ -235,7 +235,11 @@
 ArpHeader&
 ArpHeader::assign(uint8_t* data)
 {
-    ArpHeader* h = reinterpret_cast<ArpHeader*>(data);
+    /* Added to work around warning: cast from 'uint8_t*' to
+     * 'ArpHeader*' increases required alignment of target type.
+     */
+    void* v = data;
+    ArpHeader* h = reinterpret_cast<ArpHeader*>(v);
 
     memset(h, 0, sizeof(*h));
 
@@ -245,7 +249,11 @@
 const ArpHeader&
 ArpHeader::assign(const PAYLOAD& payload)
 {
-    const ArpHeader* h = reinterpret_cast<const ArpHeader*>(&payload[0]);
+    /* Added to work around warning: cast from 'const unsigned char*' to
+     * 'ArpHeader*' increases required alignment of target type.
+     */
+    const void* v = &payload[0];
+    const ArpHeader* h = reinterpret_cast<const ArpHeader*>(v);
 
     unsigned size = sizeof(*h);
 

Reply via email to