Merge change 24171 into eclair

* changes:
  Turn an assert into an error to handle bad struct members more gracefully.