Print this page
3373 gcc >= 4.5 concerns about offsetof()

Split Close
Expand all
Collapse all
          --- old/usr/src/uts/sun/io/scsi/adapters/sf.c
          +++ new/usr/src/uts/sun/io/scsi/adapters/sf.c
↓ open down ↓ 49 lines elided ↑ open up ↑
  50   50  
  51   51  #define SF_DEBUG(level, args) \
  52   52          if (sfdebug >= (level)) sf_log args
  53   53  #else
  54   54  #define SF_DEBUG(level, args)
  55   55  #endif
  56   56  
  57   57  static int sf_bus_config_debug = 0;
  58   58  
  59   59  /* Why do I have to do this? */
  60      -#define offsetof(s, m)  (size_t)(&(((s *)0)->m))
       60 +#if defined(__GNUC__)
       61 +#define offsetof(s, m)  __builtin_offsetof(s, m)
       62 +#else
       63 +#define offsetof(s, m)  ((size_t)(&(((s *)0)->m)))
       64 +#endif
  61   65  
  62   66  #include <sys/scsi/scsi.h>
  63   67  #include <sys/fc4/fcal.h>
  64   68  #include <sys/fc4/fcp.h>
  65   69  #include <sys/fc4/fcal_linkapp.h>
  66   70  #include <sys/socal_cq_defs.h>
  67   71  #include <sys/fc4/fcal_transport.h>
  68   72  #include <sys/fc4/fcio.h>
  69   73  #include <sys/scsi/adapters/sfvar.h>
  70   74  #include <sys/scsi/impl/scsi_reset_notify.h>
↓ open down ↓ 7168 lines elided ↑ open up ↑
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX