This is very brittle and only works for bool fields. Instead we ought to filter out things that have their default values when we create the `[FieldDescr a]` (e.g. in `binfoFieldDescrs`). At that point we know what the actual value is (instead of just having a `getter`) and we can compare it to the default value. Alternatively we could package up the default value inside the `FieldDescr` so we can use it here.

/cc @dcoutts