From: Rich Felker Date: Wed, 5 Dec 2012 05:00:42 +0000 (-0500) Subject: use __builtin_offsetof to implement offsetof when possible X-Git-Url: http://nsz.repo.hu/git/?p=musl;a=commitdiff_plain;h=a7c1f9727a099da0d4722d4cf81056acd205158b use __builtin_offsetof to implement offsetof when possible apparently recent gcc versions have intentionally broken the traditional definition by treating it as a non-constant expression. the traditional definition may also be problematic for c++ programs. --- diff --git a/include/stddef.h b/include/stddef.h index dbf5a4ae..a5bb9ecc 100644 --- a/include/stddef.h +++ b/include/stddef.h @@ -14,6 +14,10 @@ #include +#if __GNUC__ > 3 +#define offsetof(type, member) __builtin_offsetof(type, member) +#else #define offsetof(type, member) ((size_t)( (char *)&(((type *)0)->member) - (char *)0 )) +#endif #endif