libzpool won't build with a studio primary
Since ZFS started putting inline functions in headers, libzpool has been unable to build with Sun Studio.
The reason is that Sun Studio creates COMDAT GROUP sections for the out-of-line version of these symbols, but in doing so creates invalid groups which refer to non-existent sections:
Group Section: .group%zap_m_phys index flags / section signature symbol  [ COMDAT ] zap_m_phys  .text%zap_m_phys   <invalid section>   <invalid section> 
ld(1), quite rightly (in my view) considers this group invalid, and its presence a fatal error
ld: fatal: file pics/zap_micro.o: group section .group%zap_m_phys: entry 2: invalid section index: 20 ld: fatal: file pics/zap_micro.o: section .text%zap_m_phys: SHF_GROUP flag set, but no corresponding SHT_GROUP section found
There is nothing I can do about this except make ld(1) more forgiving of invalid groups where in this case "forgiving" is, perhaps, a way of saying "wrong". I would rather not do this.
Clearly, though, we also can't fix Sun Studio.
The other option is ZFS ceasing to use inline functions in headers like this, or doing so in a way which (portably) never emits an out-of-line definition.