--- old/usr/src/lib/libumem/common/misc.h	2013-09-05 23:02:09.463934042 +0400
+++ new/usr/src/lib/libumem/common/misc.h	2013-09-05 23:02:08.877373712 +0400
@@ -27,8 +27,6 @@
 #ifndef	_MISC_H
 #define	_MISC_H
 
-#pragma ident	"%Z%%M%	%I%	%E% SMI"
-
 #include <sys/types.h>
 #include <sys/time.h>
 #include <thread.h>
@@ -50,7 +48,11 @@
  */
 
 #undef	offsetof
+#if defined(__GNUC__)
+#define	offsetof(s, m)	__builtin_offsetof(s, m)
+#else
 #define	offsetof(s, m)	((size_t)(&(((s *)0)->m)))
+#endif
 
 /*
  * a safe printf  -- do not use for error messages.
