Hi Markus, please do not top post on this mailing list. > Why can't we get rid off the "typeof" keyword completely and using a > template similar approach: > > === > > #define bt_get_unaligned_tmpl(type, ptr) \ > ({ \ > struct __p_s { \ > type __v; \ > } __attribute__((packed)); \ > struct __p_s *__p = (struct __p_s*)(ptr); \ > __p->__v; \ > }) > > static inline uint64_t bt_get_le64(void *ptr) > { > return bt_get_unaligned_tmpl(uint64_t, ptr); > } > > static inline uint64_t bt_get_be64(void *ptr) > { > return bswap_64(bt_get_unaligned_tmpl(uint64_t, ptr)); > } > > === > > Okay, the macro parameter type is not encapsulated by parenthesis, but > it seems okay and working. > So it seems to be a very more portable solution (IMHO). what does seems okay and working actually mean? Have you actually verified on platform that require correct unaligned access to data? Regards Marcel -- To unsubscribe from this list: send the line "unsubscribe linux-bluetooth" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html