gcc produces a "variably modified X at file scope" warning for structures that use these size definitions. I think the definitions are actually fine but can be rephrased with offsetof more cleanly anyway.
Looks like this was originally reported here: https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=211540